IyBUaGlzIHNldCBvZiB0ZXN0cyBpcyBmb3IgZmVhdHVyZXMgdGhhdCBhcmUgY29tcGF0aWJsZSB3aXRoIGFsbCB2ZXJzaW9ucyBvZgojIFBlcmwgPj0gNS4xMCwgaW4gbm9uLVVURiBtb2RlLiBJdCBzaG91bGQgcnVuIGNsZWFuIGZvciB0aGUgOC1iaXQsIDE2LWJpdCwgYW5kCiMgMzItYml0IFBDUkUgbGlicmFyaWVzLCBhbmQgYWxzbyB1c2luZyB0aGUgcGVybHRlc3QucGwgc2NyaXB0LgogICAgCiNmb3JiaWRfdXRmCiNuZXdsaW5lX2RlZmF1bHQgbGYgYW55IGFueWNybGYKI3Blcmx0ZXN0CgovdGhlIHF1aWNrIGJyb3duIGZveC8KICAgIHRoZSBxdWljayBicm93biBmb3gKIDA6IHRoZSBxdWljayBicm93biBmb3gKICAgIFdoYXQgZG8geW91IGtub3cgYWJvdXQgdGhlIHF1aWNrIGJyb3duIGZveD8KIDA6IHRoZSBxdWljayBicm93biBmb3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBUaGUgcXVpY2sgYnJvd24gRk9YCk5vIG1hdGNoCiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IFRIRSBRVUlDSyBCUk9XTiBGT1g/Ck5vIG1hdGNoCgovVGhlIHF1aWNrIGJyb3duIGZveC9pCiAgICB0aGUgcXVpY2sgYnJvd24gZm94CiAwOiB0aGUgcXVpY2sgYnJvd24gZm94CiAgICBUaGUgcXVpY2sgYnJvd24gRk9YCiAwOiBUaGUgcXVpY2sgYnJvd24gRk9YCiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IHRoZSBxdWljayBicm93biBmb3g/CiAwOiB0aGUgcXVpY2sgYnJvd24gZm94CiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IFRIRSBRVUlDSyBCUk9XTiBGT1g/CiAwOiBUSEUgUVVJQ0sgQlJPV04gRk9YCgovYWJjZFx0XG5cclxmXGFcZVwwNzFceDNiXCRcXFw/Y2F4eXovCiAgICBhYmNkXHRcblxyXGZcYVxlOTtcJFxcP2NheHl6CiAwOiBhYmNkXHgwOVx4MGFceDBkXHgwY1x4MDdceDFiOTskXD9jYXh5egoKL2EqYWJjP3h5eitwcXJ7M31hYnsyLH14eXs0LDV9cHF7MCw2fUFCezAsfXp6LwogICAgYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYnh5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFhYnh5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFhYnh5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFhYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFiY3h5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwQXp6CiAwOiBhYWFiY3h5enBxcnJyYWJieHl5eXlwQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFhYWJjeHl6cHFycnJhYmJ4eXl5eXBxcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxQXp6CiAwOiBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFxcXFBenoKICAgIGFhYWJjeHl6cHFycnJhYmJ4eXl5eXBxcXFxcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFxcXFxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcXFxQXp6CiAwOiBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcXFxQXp6CiAgICBhYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFiY3h5enBxcnJyYWJieHl5eXlwcUF6egogICAgYWJ4eXp6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYnh5enpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFhYnh5enp6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWJ4eXp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYnh5enp6enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFhYnh5enp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYWJ4eXp6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFieHl6enp6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYmN4eXp6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYmN4eXp6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWJjeHl6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYmN4eXp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYmN4eXp6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWJjeHl6enp6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFhYmN4eXp6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFiY3h5enp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXlwcUF6egogMDogYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXlwcUF6egogICAgYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXl5cHFBenoKIDA6IGFhYWFiY3h5enp6enBxcnJyYWJiYnh5eXl5eXBxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwQUJ6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cEFCenoKICAgIGFhYWJjeHl6cHFycnJhYmJ4eXl5eXBBQkJ6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cEFCQnp6CiAgICA+Pj5hYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICA+YWFhYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICA+Pj4+YWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYmN4eXpwcXJycmFiYnh5eXl5cHFBenoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYnh5enBxcnJhYmJ4eXl5eXBxQXp6Ck5vIG1hdGNoCiAgICBhYnh5enBxcnJycmFiYnh5eXl5cHFBenoKTm8gbWF0Y2gKICAgIGFieHl6cHFycnJhYnh5eXl5cHFBenoKTm8gbWF0Y2gKICAgIGFhYWFiY3h5enp6enBxcnJyYWJiYnh5eXl5eXlwcUF6egpObyBtYXRjaAogICAgYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXBxQXp6Ck5vIG1hdGNoCiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcXFxcUF6egpObyBtYXRjaAoKL14oYWJjKXsxLDJ9enovCiAgICBhYmN6egogMDogYWJjenoKIDE6IGFiYwogICAgYWJjYWJjenoKIDA6IGFiY2FiY3p6CiAxOiBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB6egpObyBtYXRjaAogICAgYWJjYWJjYWJjenoKTm8gbWF0Y2gKICAgID4+YWJjenoKTm8gbWF0Y2gKCi9eKGIrP3xhKXsxLDJ9P2MvCiAgICBiYwogMDogYmMKIDE6IGIKICAgIGJiYwogMDogYmJjCiAxOiBiCiAgICBiYmJjCiAwOiBiYmJjCiAxOiBiYgogICAgYmFjCiAwOiBiYWMKIDE6IGEKICAgIGJiYWMKIDA6IGJiYWMKIDE6IGEKICAgIGFhYwogMDogYWFjCiAxOiBhCiAgICBhYmJiYmJiYmJiYmJjCiAwOiBhYmJiYmJiYmJiYmJjCiAxOiBiYmJiYmJiYmJiYgogICAgYmJiYmJiYmJiYmJhYwogMDogYmJiYmJiYmJiYmJhYwogMTogYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWMKTm8gbWF0Y2gKICAgIGFiYmJiYmJiYmJiYmFjCk5vIG1hdGNoCgovXihiK3xhKXsxLDJ9Yy8KICAgIGJjCiAwOiBiYwogMTogYgogICAgYmJjCiAwOiBiYmMKIDE6IGJiCiAgICBiYmJjCiAwOiBiYmJjCiAxOiBiYmIKICAgIGJhYwogMDogYmFjCiAxOiBhCiAgICBiYmFjCiAwOiBiYmFjCiAxOiBhCiAgICBhYWMKIDA6IGFhYwogMTogYQogICAgYWJiYmJiYmJiYmJiYwogMDogYWJiYmJiYmJiYmJiYwogMTogYmJiYmJiYmJiYmIKICAgIGJiYmJiYmJiYmJiYWMKIDA6IGJiYmJiYmJiYmJiYWMKIDE6IGEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFjCk5vIG1hdGNoCiAgICBhYmJiYmJiYmJiYmJhYwpObyBtYXRjaAoKL14oYit8YSl7MSwyfT9iYy8KICAgIGJiYwogMDogYmJjCiAxOiBiCgovXihiKnxiYSl7MSwyfT9iYy8KICAgIGJhYmMKIDA6IGJhYmMKIDE6IGJhCiAgICBiYmFiYwogMDogYmJhYmMKIDE6IGJhCiAgICBiYWJhYmMKIDA6IGJhYmFiYwogMTogYmEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiYWJhYmJjCk5vIG1hdGNoCiAgICBiYWJhYmFiYwpObyBtYXRjaAoKL14oYmF8YiopezEsMn0/YmMvCiAgICBiYWJjCiAwOiBiYWJjCiAxOiBiYQogICAgYmJhYmMKIDA6IGJiYWJjCiAxOiBiYQogICAgYmFiYWJjCiAwOiBiYWJhYmMKIDE6IGJhClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmFiYWJiYwpObyBtYXRjaAogICAgYmFiYWJhYmMKTm8gbWF0Y2gKCi9eXGNhXGNBXGNbO1xjOi8KICAgIFx4MDFceDAxXGU7egogMDogXHgwMVx4MDFceDFiO3oKCi9eW2FiXF1jZGVdLwogICAgYXRoaW5nCiAwOiBhCiAgICBidGhpbmcKIDA6IGIKICAgIF10aGluZwogMDogXQogICAgY3RoaW5nCiAwOiBjCiAgICBkdGhpbmcKIDA6IGQKICAgIGV0aGluZwogMDogZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGZ0aGluZwpObyBtYXRjaAogICAgW3RoaW5nCk5vIG1hdGNoCiAgICBcXHRoaW5nCk5vIG1hdGNoCgovXltdY2RlXS8KICAgIF10aGluZwogMDogXQogICAgY3RoaW5nCiAwOiBjCiAgICBkdGhpbmcKIDA6IGQKICAgIGV0aGluZwogMDogZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGF0aGluZwpObyBtYXRjaAogICAgZnRoaW5nCk5vIG1hdGNoCgovXlteYWJcXWNkZV0vCiAgICBmdGhpbmcKIDA6IGYKICAgIFt0aGluZwogMDogWwogICAgXFx0aGluZwogMDogXApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGF0aGluZwpObyBtYXRjaAogICAgYnRoaW5nCk5vIG1hdGNoCiAgICBddGhpbmcKTm8gbWF0Y2gKICAgIGN0aGluZwpObyBtYXRjaAogICAgZHRoaW5nCk5vIG1hdGNoCiAgICBldGhpbmcKTm8gbWF0Y2gKCi9eW15dY2RlXS8KICAgIGF0aGluZwogMDogYQogICAgZnRoaW5nCiAwOiBmClw9IEV4cGVjdCBubyBtYXRjaAogICAgXXRoaW5nCk5vIG1hdGNoCiAgICBjdGhpbmcKTm8gbWF0Y2gKICAgIGR0aGluZwpObyBtYXRjaAogICAgZXRoaW5nCk5vIG1hdGNoCgovXlyBLwogICAggQogMDogXHg4MQoKL17/LwogICAg/wogMDogXHhmZgoKL15bMC05XSskLwogICAgMAogMDogMAogICAgMQogMDogMQogICAgMgogMDogMgogICAgMwogMDogMwogICAgNAogMDogNAogICAgNQogMDogNQogICAgNgogMDogNgogICAgNwogMDogNwogICAgOAogMDogOAogICAgOQogMDogOQogICAgMTAKIDA6IDEwCiAgICAxMDAKIDA6IDEwMApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwpObyBtYXRjaAoKL14uKm50ZXIvCiAgICBlbnRlcgogMDogZW50ZXIKICAgIGludGVyCiAwOiBpbnRlcgogICAgdXBvbnRlcgogMDogdXBvbnRlcgoKL154eHhbMC05XSskLwogICAgeHh4MAogMDogeHh4MAogICAgeHh4MTIzNAogMDogeHh4MTIzNApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh4eApObyBtYXRjaAoKL14uK1swLTldWzAtOV1bMC05XSQvCiAgICB4MTIzCiAwOiB4MTIzCiAgICB4MTIzNAogMDogeDEyMzQKICAgIHh4MTIzCiAwOiB4eDEyMwogICAgMTIzNDU2CiAwOiAxMjM0NTYKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjMKTm8gbWF0Y2gKCi9eLis/WzAtOV1bMC05XVswLTldJC8KICAgIHgxMjMKIDA6IHgxMjMKICAgIHgxMjM0CiAwOiB4MTIzNAogICAgeHgxMjMKIDA6IHh4MTIzCiAgICAxMjM0NTYKIDA6IDEyMzQ1NgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDEyMwpObyBtYXRjaAoKL14oW14hXSspISguKyk9YXBxdXh6XC5peHJcLnp6elwuYWNcLnVrJC8KICAgIGFiYyFwcXI9YXBxdXh6Lml4ci56enouYWMudWsKIDA6IGFiYyFwcXI9YXBxdXh6Lml4ci56enouYWMudWsKIDE6IGFiYwogMjogcHFyClw9IEV4cGVjdCBubyBtYXRjaAogICAgIXBxcj1hcHF1eHouaXhyLnp6ei5hYy51awpObyBtYXRjaAogICAgYWJjIT1hcHF1eHouaXhyLnp6ei5hYy51awpObyBtYXRjaAogICAgYWJjIXBxcj1hcHF1eHo6aXhyLnp6ei5hYy51awpObyBtYXRjaAogICAgYWJjIXBxcj1hcHF1eHouaXhyLnp6ei5hYy51a2sKTm8gbWF0Y2gKCi86LwogICAgV2VsbCwgd2UgbmVlZCBhIGNvbG9uOiBzb21ld2hlcmUKIDA6IDoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBGYWlsIHdpdGhvdXQgYSBjb2xvbgpObyBtYXRjaAoKLyhbXGRhLWY6XSspJC9pCiAgICAwYWJjCiAwOiAwYWJjCiAxOiAwYWJjCiAgICBhYmMKIDA6IGFiYwogMTogYWJjCiAgICBmZWQKIDA6IGZlZAogMTogZmVkCiAgICBFCiAwOiBFCiAxOiBFCiAgICA6OgogMDogOjoKIDE6IDo6CiAgICA1ZjAzOjEyQzA6OjkzMmUKIDA6IDVmMDM6MTJDMDo6OTMyZQogMTogNWYwMzoxMkMwOjo5MzJlCiAgICBmZWQgZGVmCiAwOiBkZWYKIDE6IGRlZgogICAgQW55IG9sZCBzdHVmZgogMDogZmYKIDE6IGZmClw9IEV4cGVjdCBubyBtYXRjaAogICAgMHp6egpObyBtYXRjaAogICAgZ3p6egpObyBtYXRjaAogICAgZmVkXHgyMApObyBtYXRjaAogICAgQW55IG9sZCBydWJiaXNoCk5vIG1hdGNoCgovXi4qXC4oXGR7MSwzfSlcLihcZHsxLDN9KVwuKFxkezEsM30pJC8KICAgIC4xLjIuMwogMDogLjEuMi4zCiAxOiAxCiAyOiAyCiAzOiAzCiAgICBBLjEyLjEyMy4wCiAwOiBBLjEyLjEyMy4wCiAxOiAxMgogMjogMTIzCiAzOiAwClw9IEV4cGVjdCBubyBtYXRjaAogICAgLjEuMi4zMzMzCk5vIG1hdGNoCiAgICAxLjIuMwpObyBtYXRjaAogICAgMTIzNC4yLjMKTm8gbWF0Y2gKCi9eKFxkKylccytJTlxzK1NPQVxzKyhcUyspXHMrKFxTKylccypcKFxzKiQvCiAgICAxIElOIFNPQSBub24tc3AxIG5vbi1zcDIoCiAwOiAxIElOIFNPQSBub24tc3AxIG5vbi1zcDIoCiAxOiAxCiAyOiBub24tc3AxCiAzOiBub24tc3AyCiAgICAxICAgIElOICAgIFNPQSAgICBub24tc3AxICAgIG5vbi1zcDIgICAoCiAwOiAxICAgIElOICAgIFNPQSAgICBub24tc3AxICAgIG5vbi1zcDIgICAoCiAxOiAxCiAyOiBub24tc3AxCiAzOiBub24tc3AyClw9IEV4cGVjdCBubyBtYXRjaAogICAgMUlOIFNPQSBub24tc3AxIG5vbi1zcDIoCk5vIG1hdGNoCgovXlthLXpBLVpcZF1bYS16QS1aXGRcLV0qKFwuW2EtekEtWlxkXVthLXpBLXpcZFwtXSopKlwuJC8KICAgIGEuCiAwOiBhLgogICAgWi4KIDA6IFouCiAgICAyLgogMDogMi4KICAgIGFiLWMucHEtci4KIDA6IGFiLWMucHEtci4KIDE6IC5wcS1yCiAgICBzeGsuenp6LmFjLnVrLgogMDogc3hrLnp6ei5hYy51ay4KIDE6IC51awogICAgeC0ueS0uCiAwOiB4LS55LS4KIDE6IC55LQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIC1hYmMucGVxLgpObyBtYXRjaAoKL15cKlwuW2Etel0oW2EtelwtXGRdKlthLXpcZF0rKT8oXC5bYS16XShbYS16XC1cZF0qW2EtelxkXSspPykqJC8KICAgICouYQogMDogKi5hCiAgICAqLmIwLWEKIDA6ICouYjAtYQogMTogMC1hCiAgICAqLmMzLWIuYwogMDogKi5jMy1iLmMKIDE6IDMtYgogMjogLmMKICAgICouYy1hLmItYwogMDogKi5jLWEuYi1jCiAxOiAtYQogMjogLmItYwogMzogLWMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAqLjAKTm8gbWF0Y2gKICAgICouYS0KTm8gbWF0Y2gKICAgICouYS1iLmMtCk5vIG1hdGNoCiAgICAqLmMtYS4wLWMKTm8gbWF0Y2gKCi9eKD89YWIoZGUpKShhYmQpKGUpLwogICAgYWJkZQogMDogYWJkZQogMTogZGUKIDI6IGFiZAogMzogZQoKL14oPyEoYWIpZGV8eCkoYWJkKShmKS8KICAgIGFiZGYKIDA6IGFiZGYKIDE6IDx1bnNldD4KIDI6IGFiZAogMzogZgoKL14oPz0oYWIoY2QpKSkoYWIpLwogICAgYWJjZAogMDogYWIKIDE6IGFiY2QKIDI6IGNkCiAzOiBhYgoKL15bXGRhLWZdKFwuW1xkYS1mXSkqJC9pCiAgICBhLmIuYy5kCiAwOiBhLmIuYy5kCiAxOiAuZAogICAgQS5CLkMuRAogMDogQS5CLkMuRAogMTogLkQKICAgIGEuYi5jLjEuMi4zLkMKIDA6IGEuYi5jLjEuMi4zLkMKIDE6IC5DCgovXlwiLipcIlxzKig7LiopPyQvCiAgICBcIjEyMzRcIgogMDogIjEyMzQiCiAgICBcImFiY2RcIiA7CiAwOiAiYWJjZCIgOwogMTogOwogICAgXCJcIiA7IHJodWJhcmIKIDA6ICIiIDsgcmh1YmFyYgogMTogOyByaHViYXJiClw9IEV4cGVjdCBubyBtYXRjaAogICAgXCIxMjM0XCIgOiB0aGluZ3MKTm8gbWF0Y2gKCi9eJC8KICAgIFwKIDA6IApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEEgbm9uLWVtcHR5IGxpbmUKTm8gbWF0Y2gKCi8gICBeICAgIGEgICAoPyMgYmVnaW5zIHdpdGggYSkgIGJcc2MgKD8jIHRoZW4gYiBjKSAkICg/IyB0aGVuIGVuZCkveAogICAgYWIgYwogMDogYWIgYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwpObyBtYXRjaAogICAgYWIgY2RlCk5vIG1hdGNoCgovKD94KSAgIF4gICAgYSAgICg/IyBiZWdpbnMgd2l0aCBhKSAgYlxzYyAoPyMgdGhlbiBiIGMpICQgKD8jIHRoZW4gZW5kKS8KICAgIGFiIGMKIDA6IGFiIGMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmMKTm8gbWF0Y2gKICAgIGFiIGNkZQpObyBtYXRjaAoKL14gICBhXCBiW2MgXWQgICAgICAgJC94CiAgICBhIGJjZAogMDogYSBiY2QKICAgIGEgYiBkCiAwOiBhIGIgZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2QKTm8gbWF0Y2gKICAgIGFiIGQKTm8gbWF0Y2gKCi9eKGEoYihjKSkpKGQoZShmKSkpKGgoaShqKSkpKGsobChtKSkpJC8KICAgIGFiY2RlZmhpamtsbQogMDogYWJjZGVmaGlqa2xtCiAxOiBhYmMKIDI6IGJjCiAzOiBjCiA0OiBkZWYKIDU6IGVmCiA2OiBmCiA3OiBoaWoKIDg6IGlqCiA5OiBqCjEwOiBrbG0KMTE6IGxtCjEyOiBtCgovXig/OmEoYihjKSkpKD86ZChlKGYpKSkoPzpoKGkoaikpKSg/OmsobChtKSkpJC8KICAgIGFiY2RlZmhpamtsbQogMDogYWJjZGVmaGlqa2xtCiAxOiBiYwogMjogYwogMzogZWYKIDQ6IGYKIDU6IGlqCiA2OiBqCiA3OiBsbQogODogbQoKL15bXHddW1xXXVtcc11bXFNdW1xkXVtcRF1bXGJdW1xuXVtcY11dW1wwMjJdLwogICAgYSsgWjArXHgwOFxuXHgxZFx4MTIKIDA6IGErIFowK1x4MDhceDBhXHgxZFx4MTIKCi9eWy5eJHwoKSorP3ssfV0rLwogICAgLl5cJCgqKyl8ez8sP30KIDA6IC5eJCgqKyl8ez8sP30KCi9eYSpcdy8KICAgIHoKIDA6IHoKICAgIGF6CiAwOiBhegogICAgYWFhegogMDogYWFhegogICAgYQogMDogYQogICAgYWEKIDA6IGFhCiAgICBhYWFhCiAwOiBhYWFhCiAgICBhKwogMDogYQogICAgYWErCiAwOiBhYQoKL15hKj9cdy8KICAgIHoKIDA6IHoKICAgIGF6CiAwOiBhCiAgICBhYWF6CiAwOiBhCiAgICBhCiAwOiBhCiAgICBhYQogMDogYQogICAgYWFhYQogMDogYQogICAgYSsKIDA6IGEKICAgIGFhKwogMDogYQoKL15hK1x3LwogICAgYXoKIDA6IGF6CiAgICBhYWF6CiAwOiBhYWF6CiAgICBhYQogMDogYWEKICAgIGFhYWEKIDA6IGFhYWEKICAgIGFhKwogMDogYWEKCi9eYSs/XHcvCiAgICBhegogMDogYXoKICAgIGFhYXoKIDA6IGFhCiAgICBhYQogMDogYWEKICAgIGFhYWEKIDA6IGFhCiAgICBhYSsKIDA6IGFhCgovXlxkezh9XHd7Mix9LwogICAgMTIzNDU2Nzg5MAogMDogMTIzNDU2Nzg5MAogICAgMTIzNDU2NzhhYgogMDogMTIzNDU2NzhhYgogICAgMTIzNDU2NzhfXwogMDogMTIzNDU2NzhfXwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDEyMzQ1NjcKTm8gbWF0Y2gKCi9eW2FlaW91XGRdezQsNX0kLwogICAgdW9pZQogMDogdW9pZQogICAgMTIzNAogMDogMTIzNAogICAgMTIzNDUKIDA6IDEyMzQ1CiAgICBhYWFhYQogMDogYWFhYWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0NTYKTm8gbWF0Y2gKCi9eW2FlaW91XGRdezQsNX0/LwogICAgdW9pZQogMDogdW9pZQogICAgMTIzNAogMDogMTIzNAogICAgMTIzNDUKIDA6IDEyMzQKICAgIGFhYWFhCiAwOiBhYWFhCiAgICAxMjM0NTYKIDA6IDEyMzQKCi9cQShhYmN8ZGVmKT0oXDEpezIsM31cWi8KICAgIGFiYz1hYmNhYmMKIDA6IGFiYz1hYmNhYmMKIDE6IGFiYwogMjogYWJjCiAgICBkZWY9ZGVmZGVmZGVmCiAwOiBkZWY9ZGVmZGVmZGVmCiAxOiBkZWYKIDI6IGRlZgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYz1kZWZkZWYKTm8gbWF0Y2gKCi9eKGEpKGIpKGMpKGQpKGUpKGYpKGcpKGgpKGkpKGopKGspXDExKihcM1w0KVwxKD8jKTIkLwogICAgYWJjZGVmZ2hpamtjZGEyCiAwOiBhYmNkZWZnaGlqa2NkYTIKIDE6IGEKIDI6IGIKIDM6IGMKIDQ6IGQKIDU6IGUKIDY6IGYKIDc6IGcKIDg6IGgKIDk6IGkKMTA6IGoKMTE6IGsKMTI6IGNkCiAgICBhYmNkZWZnaGlqa2tra2NkYTIKIDA6IGFiY2RlZmdoaWpra2trY2RhMgogMTogYQogMjogYgogMzogYwogNDogZAogNTogZQogNjogZgogNzogZwogODogaAogOTogaQoxMDogagoxMTogawoxMjogY2QKCi8oY2F0KGEocmFjdHx0b25pYyl8ZXJwaWxsYXIpKSBcMSgpMigzKS8KICAgIGNhdGFyYWN0IGNhdGFyYWN0MjMKIDA6IGNhdGFyYWN0IGNhdGFyYWN0MjMKIDE6IGNhdGFyYWN0CiAyOiBhcmFjdAogMzogcmFjdAogNDogCiA1OiAzCiAgICBjYXRhdG9uaWMgY2F0YXRvbmljMjMKIDA6IGNhdGF0b25pYyBjYXRhdG9uaWMyMwogMTogY2F0YXRvbmljCiAyOiBhdG9uaWMKIDM6IHRvbmljCiA0OiAKIDU6IDMKICAgIGNhdGVycGlsbGFyIGNhdGVycGlsbGFyMjMKIDA6IGNhdGVycGlsbGFyIGNhdGVycGlsbGFyMjMKIDE6IGNhdGVycGlsbGFyCiAyOiBlcnBpbGxhcgogMzogPHVuc2V0PgogNDogCiA1OiAzCgoKL15Gcm9tICsoW14gXSspICtbYS16QS1aXVthLXpBLVpdW2EtekEtWl0gK1thLXpBLVpdW2EtekEtWl1bYS16QS1aXSArWzAtOV0/WzAtOV0gK1swLTldWzAtOV06WzAtOV1bMC05XS8KICAgIEZyb20gYWJjZCAgTW9uIFNlcCAwMSAxMjozMzowMiAxOTk3CiAwOiBGcm9tIGFiY2QgIE1vbiBTZXAgMDEgMTI6MzMKIDE6IGFiY2QKCi9eRnJvbVxzK1xTK1xzKyhbYS16QS1aXXszfVxzKyl7Mn1cZHsxLDJ9XHMrXGRcZDpcZFxkLwogICAgRnJvbSBhYmNkICBNb24gU2VwIDAxIDEyOjMzOjAyIDE5OTcKIDA6IEZyb20gYWJjZCAgTW9uIFNlcCAwMSAxMjozMwogMTogU2VwIAogICAgRnJvbSBhYmNkICBNb24gU2VwICAxIDEyOjMzOjAyIDE5OTcKIDA6IEZyb20gYWJjZCAgTW9uIFNlcCAgMSAxMjozMwogMTogU2VwICAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBGcm9tIGFiY2QgIFNlcCAwMSAxMjozMzowMiAxOTk3Ck5vIG1hdGNoCgovXjEyLjM0L3MKICAgIDEyXG4zNAogMDogMTJceDBhMzQKICAgIDEyXHIzNAogMDogMTJceDBkMzQKCi9cdysoPz1cdCkvCiAgICB0aGUgcXVpY2sgYnJvd25cdCBmb3gKIDA6IGJyb3duCgovZm9vKD8hYmFyKSguKikvCiAgICBmb29iYXIgaXMgZm9vbGlzaCBzZWU/CiAwOiBmb29saXNoIHNlZT8KIDE6IGxpc2ggc2VlPwoKLyg/Oig/IWZvbykuLi58Xi57MCwyfSliYXIoLiopLwogICAgZm9vYmFyIGNyb3diYXIgZXRjCiAwOiByb3diYXIgZXRjCiAxOiAgZXRjCiAgICBiYXJyZWwKIDA6IGJhcnJlbAogMTogcmVsCiAgICAyYmFycmVsCiAwOiAyYmFycmVsCiAxOiByZWwKICAgIEEgYmFycmVsCiAwOiBBIGJhcnJlbAogMTogcmVsCgovXihcRCopKD89XGQpKD8hMTIzKS8KICAgIGFiYzQ1NgogMDogYWJjCiAxOiBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmMxMjMKTm8gbWF0Y2gKCi9eMTIzNCg/IyB0ZXN0IG5ld2xpbmVzCiAgaW5zaWRlKS8KICAgIDEyMzQKIDA6IDEyMzQKCi9eMTIzNCAjY29tbWVudCBpbiBleHRlbmRlZCByZQogIC94CiAgICAxMjM0CiAwOiAxMjM0CgovI3JodWJhcmIKICBhYmNkL3gKICAgIGFiY2QKIDA6IGFiY2QKCi9eYWJjZCNyaHViYXJiL3gKICAgIGFiY2QKIDA6IGFiY2QKCi9eKGEpXDF7MiwzfSguKS8KICAgIGFhYWIKIDA6IGFhYWIKIDE6IGEKIDI6IGIKICAgIGFhYWFiCiAwOiBhYWFhYgogMTogYQogMjogYgogICAgYWFhYWFiCiAwOiBhYWFhYQogMTogYQogMjogYQogICAgYWFhYWFhYgogMDogYWFhYWEKIDE6IGEKIDI6IGEKCi8oPyFeKWFiYy8KICAgIHRoZSBhYmMKIDA6IGFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwpObyBtYXRjaAoKLyg/PV4pYWJjLwogICAgYWJjCiAwOiBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB0aGUgYWJjCk5vIG1hdGNoCgovXlthYl17MSwzfShhYip8YikvCiAgICBhYWJiYmJiCiAwOiBhYWJiCiAxOiBiCgovXlthYl17MSwzfT8oYWIqfGIpLwogICAgYWFiYmJiYgogMDogYWFiYmJiYgogMTogYWJiYmJiCgovXlthYl17MSwzfT8oYWIqP3xiKS8KICAgIGFhYmJiYmIKIDA6IGFhCiAxOiBhCgovXlthYl17MSwzfShhYio/fGIpLwogICAgYWFiYmJiYgogMDogYWFiYgogMTogYgoKLyAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICAgICAgICAgICAgICAgICAgICAgICAgIyBvcHRpb25hbCBsZWFkaW5nIGNvbW1lbnQKKD86ICAgICg/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKIiAoPzogICAgICAgICAgICAgICAgICAgICAgIyBvcGVuaW5nIHF1b3RlLi4uClteXFxceDgwLVx4ZmZcblwwMTUiXSAgICAgICAgICAgICAgICAjICAgQW55dGhpbmcgZXhjZXB0IGJhY2tzbGFzaCBhbmQgcXVvdGUKfCAgICAgICAgICAgICAgICAgICAgICMgICAgb3IKXFwgW15ceDgwLVx4ZmZdICAgICAgICAgICAjICAgRXNjYXBlZCBzb21ldGhpbmcgKHNvbWV0aGluZyAhPSBDUikKKSogIiAgIyBjbG9zaW5nIHF1b3RlCikgICAgICAgICAgICAgICAgICAgICMgaW5pdGlhbCB3b3JkCig/OiAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgXC4gICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8CiIgKD86ICAgICAgICAgICAgICAgICAgICAgICMgb3BlbmluZyBxdW90ZS4uLgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gICAgICAgICAgICAgICAgIyAgIEFueXRoaW5nIGV4Y2VwdCBiYWNrc2xhc2ggYW5kIHF1b3RlCnwgICAgICAgICAgICAgICAgICAgICAjICAgIG9yClxcIFteXHg4MC1ceGZmXSAgICAgICAgICAgIyAgIEVzY2FwZWQgc29tZXRoaW5nIChzb21ldGhpbmcgIT0gQ1IpCikqICIgICMgY2xvc2luZyBxdW90ZQopICApKiAjIGZ1cnRoZXIgb2theSwgaWYgbGVkIGJ5IGEgcGVyaW9kCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogIEAgICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfCAgIFxbICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgaW5pdGlhbCBzdWJkb21haW4KKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMKKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgXC4gICAgICAgICAgICAgICAgICAgICAgICAjIGlmIGxlZCBieSBhIHBlcmlvZC4uLgooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfCAgIFxbICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKSAgICAgICAgICAgICAgICAgICAgICMgICAuLi5mdXJ0aGVyIG9rYXkKKSoKIyBhZGRyZXNzCnwgICAgICAgICAgICAgICAgICAgICAjICBvcgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8CiIgKD86ICAgICAgICAgICAgICAgICAgICAgICMgb3BlbmluZyBxdW90ZS4uLgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gICAgICAgICAgICAgICAgIyAgIEFueXRoaW5nIGV4Y2VwdCBiYWNrc2xhc2ggYW5kIHF1b3RlCnwgICAgICAgICAgICAgICAgICAgICAjICAgIG9yClxcIFteXHg4MC1ceGZmXSAgICAgICAgICAgIyAgIEVzY2FwZWQgc29tZXRoaW5nIChzb21ldGhpbmcgIT0gQ1IpCikqICIgICMgY2xvc2luZyBxdW90ZQopICAgICAgICAgICAgICMgb25lIHdvcmQsIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkuLi4uCig/OgpbXigpPD5ALDs6Ii5cXFxbXF1ceDgwLVx4ZmZcMDAwLVwwMTBcMDEyLVwwMzddICB8ICAjIGF0b20gYW5kIHNwYWNlIHBhcnRzLCBvci4uLgpcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgICAgICB8ICAjIGNvbW1lbnRzLCBvci4uLgoKIiAoPzogICAgICAgICAgICAgICAgICAgICAgIyBvcGVuaW5nIHF1b3RlLi4uClteXFxceDgwLVx4ZmZcblwwMTUiXSAgICAgICAgICAgICAgICAjICAgQW55dGhpbmcgZXhjZXB0IGJhY2tzbGFzaCBhbmQgcXVvdGUKfCAgICAgICAgICAgICAgICAgICAgICMgICAgb3IKXFwgW15ceDgwLVx4ZmZdICAgICAgICAgICAjICAgRXNjYXBlZCBzb21ldGhpbmcgKHNvbWV0aGluZyAhPSBDUikKKSogIiAgIyBjbG9zaW5nIHF1b3RlCiMgcXVvdGVkIHN0cmluZ3MKKSoKPCAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICAgICAgICAgICAgICAgICAgICMgbGVhZGluZyA8Cig/OiAgQCAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ICAgXFsgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpbml0aWFsIHN1YmRvbWFpbgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIwooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICBcLiAgICAgICAgICAgICAgICAgICAgICAgICMgaWYgbGVkIGJ5IGEgcGVyaW9kLi4uCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ICAgXFsgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopICAgICAgICAgICAgICAgICAgICAgIyAgIC4uLmZ1cnRoZXIgb2theQopKgoKKD86ICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAsICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICBAICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgICg/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwgICBcWyAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGluaXRpYWwgc3ViZG9tYWluCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogIFwuICAgICAgICAgICAgICAgICAgICAgICAgIyBpZiBsZWQgYnkgYSBwZXJpb2QuLi4KKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICg/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwgICBcWyAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikgICAgICAgICAgICAgICAgICAgICAjICAgLi4uZnVydGhlciBva2F5CikqCikqICMgZnVydGhlciBva2F5LCBpZiBsZWQgYnkgY29tbWEKOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBjbG9zaW5nIGNvbG9uCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICk/ICMgICAgICAgb3B0aW9uYWwgcm91dGUKKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfAoiICg/OiAgICAgICAgICAgICAgICAgICAgICAjIG9wZW5pbmcgcXVvdGUuLi4KW15cXFx4ODAtXHhmZlxuXDAxNSJdICAgICAgICAgICAgICAgICMgICBBbnl0aGluZyBleGNlcHQgYmFja3NsYXNoIGFuZCBxdW90ZQp8ICAgICAgICAgICAgICAgICAgICAgIyAgICBvcgpcXCBbXlx4ODAtXHhmZl0gICAgICAgICAgICMgICBFc2NhcGVkIHNvbWV0aGluZyAoc29tZXRoaW5nICE9IENSKQopKiAiICAjIGNsb3NpbmcgcXVvdGUKKSAgICAgICAgICAgICAgICAgICAgIyBpbml0aWFsIHdvcmQKKD86ICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICBcLiAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICg/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKIiAoPzogICAgICAgICAgICAgICAgICAgICAgIyBvcGVuaW5nIHF1b3RlLi4uClteXFxceDgwLVx4ZmZcblwwMTUiXSAgICAgICAgICAgICAgICAjICAgQW55dGhpbmcgZXhjZXB0IGJhY2tzbGFzaCBhbmQgcXVvdGUKfCAgICAgICAgICAgICAgICAgICAgICMgICAgb3IKXFwgW15ceDgwLVx4ZmZdICAgICAgICAgICAjICAgRXNjYXBlZCBzb21ldGhpbmcgKHNvbWV0aGluZyAhPSBDUikKKSogIiAgIyBjbG9zaW5nIHF1b3RlCikgICkqICMgZnVydGhlciBva2F5LCBpZiBsZWQgYnkgYSBwZXJpb2QKKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgQCAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ICAgXFsgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpbml0aWFsIHN1YmRvbWFpbgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIwooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICBcLiAgICAgICAgICAgICAgICAgICAgICAgICMgaWYgbGVkIGJ5IGEgcGVyaW9kLi4uCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ICAgXFsgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopICAgICAgICAgICAgICAgICAgICAgIyAgIC4uLmZ1cnRoZXIgb2theQopKgojICAgICAgIGFkZHJlc3Mgc3BlYwooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICA+ICMgICAgICAgICAgICAgICAgICB0cmFpbGluZyA+CiMgbmFtZSBhbmQgYWRkcmVzcwopICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgICAgICAgICAgICAgICAgICAgICAjIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnQKL3gKICAgIEFsYW4gT3RoZXIgPHVzZXJcQGRvbS5haW4+CiAwOiBBbGFuIE90aGVyIDx1c2VyQGRvbS5haW4+CiAgICA8dXNlclxAZG9tLmFpbj4KIDA6IHVzZXJAZG9tLmFpbgogICAgdXNlclxAZG9tLmFpbgogMDogdXNlckBkb20uYWluCiAgICBcIkEuIE90aGVyXCIgPHVzZXIuMTIzNFxAZG9tLmFpbj4gKGEgY29tbWVudCkKIDA6ICJBLiBPdGhlciIgPHVzZXIuMTIzNEBkb20uYWluPiAoYSBjb21tZW50KQogICAgQS4gT3RoZXIgPHVzZXIuMTIzNFxAZG9tLmFpbj4gKGEgY29tbWVudCkKIDA6ICBPdGhlciA8dXNlci4xMjM0QGRvbS5haW4+IChhIGNvbW1lbnQpCiAgICBcIi9zPXVzZXIvb3U9aG9zdC9vPXBsYWNlL3BybWQ9dXUueXkvYWRtZD0gL2M9Z2IvXCJcQHg0MDAtcmUubGF5CiAwOiAiL3M9dXNlci9vdT1ob3N0L289cGxhY2UvcHJtZD11dS55eS9hZG1kPSAvYz1nYi8iQHg0MDAtcmUubGF5CiAgICBBIG1pc3NpbmcgYW5nbGUgPHVzZXJcQHNvbWUud2hlcmUKIDA6IHVzZXJAc29tZS53aGVyZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFRoZSBxdWljayBicm93biBmb3gKTm8gbWF0Y2gKCi9bXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIGxlYWRpbmcgY29tbWVudAooPzoKKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KIyBBdG9tCnwgICAgICAgICAgICAgICAgICAgICAgICMgIG9yCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAiClteXFxceDgwLVx4ZmZcblwwMTUiXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICBub3JtYWwKKD86ICBcXCBbXlx4ODAtXHhmZl0gIFteXFxceDgwLVx4ZmZcblwwMTUiXSAqICkqICAgICAgICAjICAgKCBzcGVjaWFsIG5vcm1hbCogKSoKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAiCiMgUXVvdGVkIHN0cmluZwopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpcLgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQojIEF0b20KfCAgICAgICAgICAgICAgICAgICAgICAgIyAgb3IKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICIKW15cXFx4ODAtXHhmZlxuXDAxNSJdICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgIG5vcm1hbAooPzogIFxcIFteXHg4MC1ceGZmXSAgW15cXFx4ODAtXHhmZlxuXDAxNSJdICogKSogICAgICAgICMgICAoIHNwZWNpYWwgbm9ybWFsKiApKgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICIKIyBRdW90ZWQgc3RyaW5nCikKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBhZGRpdGlvbmFsIHdvcmRzCikqCkAKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfApcWyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgb3B0aW9uYWwgdHJhaWxpbmcgY29tbWVudHMKKD86ClwuCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCikqCiMgYWRkcmVzcwp8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICBvcgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQojIEF0b20KfCAgICAgICAgICAgICAgICAgICAgICAgIyAgb3IKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICIKW15cXFx4ODAtXHhmZlxuXDAxNSJdICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgIG5vcm1hbAooPzogIFxcIFteXHg4MC1ceGZmXSAgW15cXFx4ODAtXHhmZlxuXDAxNSJdICogKSogICAgICAgICMgICAoIHNwZWNpYWwgbm9ybWFsKiApKgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICIKIyBRdW90ZWQgc3RyaW5nCikKIyBsZWFkaW5nIHdvcmQKW14oKTw+QCw7OiIuXFxcW1xdXHg4MC1ceGZmXDAwMC1cMDEwXDAxMi1cMDM3XSAqICAgICAgICAgICAgICAgIyAibm9ybWFsIiBhdG9tcyBhbmQgb3Igc3BhY2VzCig/OgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQp8CiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAiClteXFxceDgwLVx4ZmZcblwwMTUiXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICBub3JtYWwKKD86ICBcXCBbXlx4ODAtXHhmZl0gIFteXFxceDgwLVx4ZmZcblwwMTUiXSAqICkqICAgICAgICAjICAgKCBzcGVjaWFsIG5vcm1hbCogKSoKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAiCikgIyAic3BlY2lhbCIgY29tbWVudCBvciBxdW90ZWQgc3RyaW5nClteKCk8PkAsOzoiLlxcXFtcXVx4ODAtXHhmZlwwMDAtXDAxMFwwMTItXDAzN10gKiAgICAgICAgICAgICMgIG1vcmUgIm5vcm1hbCIKKSoKPApbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIDwKKD86CkAKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfApcWyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgb3B0aW9uYWwgdHJhaWxpbmcgY29tbWVudHMKKD86ClwuCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCikqCig/OiAsCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCkAKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfApcWyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgb3B0aW9uYWwgdHJhaWxpbmcgY29tbWVudHMKKD86ClwuCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCikqCikqICAjIGFkZGl0aW9uYWwgZG9tYWlucwo6CltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgb3B0aW9uYWwgdHJhaWxpbmcgY29tbWVudHMKKT8gICAgICMgICAgICAgb3B0aW9uYWwgcm91dGUKKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KIyBBdG9tCnwgICAgICAgICAgICAgICAgICAgICAgICMgIG9yCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAiClteXFxceDgwLVx4ZmZcblwwMTUiXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICBub3JtYWwKKD86ICBcXCBbXlx4ODAtXHhmZl0gIFteXFxceDgwLVx4ZmZcblwwMTUiXSAqICkqICAgICAgICAjICAgKCBzcGVjaWFsIG5vcm1hbCogKSoKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAiCiMgUXVvdGVkIHN0cmluZwopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpcLgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQojIEF0b20KfCAgICAgICAgICAgICAgICAgICAgICAgIyAgb3IKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICIKW15cXFx4ODAtXHhmZlxuXDAxNSJdICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgIG5vcm1hbAooPzogIFxcIFteXHg4MC1ceGZmXSAgW15cXFx4ODAtXHhmZlxuXDAxNSJdICogKSogICAgICAgICMgICAoIHNwZWNpYWwgbm9ybWFsKiApKgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICIKIyBRdW90ZWQgc3RyaW5nCikKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBhZGRpdGlvbmFsIHdvcmRzCikqCkAKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfApcWyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgb3B0aW9uYWwgdHJhaWxpbmcgY29tbWVudHMKKD86ClwuCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCikqCiMgICAgICAgYWRkcmVzcyBzcGVjCj4gICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgID4KIyBuYW1lIGFuZCBhZGRyZXNzCikKL3gKICAgIEFsYW4gT3RoZXIgPHVzZXJcQGRvbS5haW4+CiAwOiBBbGFuIE90aGVyIDx1c2VyQGRvbS5haW4+CiAgICA8dXNlclxAZG9tLmFpbj4KIDA6IHVzZXJAZG9tLmFpbgogICAgdXNlclxAZG9tLmFpbgogMDogdXNlckBkb20uYWluCiAgICBcIkEuIE90aGVyXCIgPHVzZXIuMTIzNFxAZG9tLmFpbj4gKGEgY29tbWVudCkKIDA6ICJBLiBPdGhlciIgPHVzZXIuMTIzNEBkb20uYWluPgogICAgQS4gT3RoZXIgPHVzZXIuMTIzNFxAZG9tLmFpbj4gKGEgY29tbWVudCkKIDA6ICBPdGhlciA8dXNlci4xMjM0QGRvbS5haW4+CiAgICBcIi9zPXVzZXIvb3U9aG9zdC9vPXBsYWNlL3BybWQ9dXUueXkvYWRtZD0gL2M9Z2IvXCJcQHg0MDAtcmUubGF5CiAwOiAiL3M9dXNlci9vdT1ob3N0L289cGxhY2UvcHJtZD11dS55eS9hZG1kPSAvYz1nYi8iQHg0MDAtcmUubGF5CiAgICBBIG1pc3NpbmcgYW5nbGUgPHVzZXJcQHNvbWUud2hlcmUKIDA6IHVzZXJAc29tZS53aGVyZQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFRoZSBxdWljayBicm93biBmb3gKTm8gbWF0Y2gKCi9hYmNcMGRlZlwwMHBxclwwMDB4eXpcMDAwMEFCLwogICAgYWJjXDBkZWZcMDBwcXJcMDAweHl6XDAwMDBBQgogMDogYWJjXHgwMGRlZlx4MDBwcXJceDAweHl6XHgwMDBBQgogICAgYWJjNDU2IGFiY1wwZGVmXDAwcHFyXDAwMHh5elwwMDAwQUJDREUKIDA6IGFiY1x4MDBkZWZceDAwcHFyXHgwMHh5elx4MDAwQUIKCi9hYmNceDBkZWZceDAwcHFyXHgwMDB4eXpceDAwMDBBQi8KICAgIGFiY1x4MGRlZlx4MDBwcXJceDAwMHh5elx4MDAwMEFCCiAwOiBhYmNceDBkZWZceDAwcHFyXHgwMDB4eXpceDAwMDBBQgogICAgYWJjNDU2IGFiY1x4MGRlZlx4MDBwcXJceDAwMHh5elx4MDAwMEFCQ0RFCiAwOiBhYmNceDBkZWZceDAwcHFyXHgwMDB4eXpceDAwMDBBQgoKL15bXDAwMC1cMDM3XS8KICAgIFwwQQogMDogXHgwMAogICAgXDAxQgogMDogXHgwMQogICAgXDAzN0MKIDA6IFx4MWYKCi9cMCovCiAgICBcMFwwXDBcMAogMDogXHgwMFx4MDBceDAwXHgwMAoKL0FceDB7MiwzfVovCiAgICBUaGUgQVx4MFx4MFoKIDA6IEFceDAwXHgwMFoKICAgIEFuIEFcMFx4MFwwWgogMDogQVx4MDBceDAwXHgwMFoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBXDBaCk5vIG1hdGNoCiAgICBBXDBceDBcMFx4MFoKTm8gbWF0Y2gKCi9eKGNvd3wpXDEoYmVsbCkvCiAgICBjb3djb3diZWxsCiAwOiBjb3djb3diZWxsCiAxOiBjb3cKIDI6IGJlbGwKICAgIGJlbGwKIDA6IGJlbGwKIDE6IAogMjogYmVsbApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGNvd2JlbGwKTm8gbWF0Y2gKCi9eXHMvCiAgICBcMDQwYWJjCiAwOiAgCiAgICBceDBjYWJjCiAwOiBceDBjCiAgICBcbmFiYwogMDogXHgwYQogICAgXHJhYmMKIDA6IFx4MGQKICAgIFx0YWJjCiAwOiBceDA5Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjCk5vIG1hdGNoCgovXmEJYgogICAgDCAgYy94CiAgICBhYmMKIDA6IGFiYwoKL14oYXwpXDEqYi8KICAgIGFiCiAwOiBhYgogMTogYQogICAgYWFhYWIKIDA6IGFhYWFiCiAxOiBhCiAgICBiCiAwOiBiCiAxOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhY2IKTm8gbWF0Y2gKCi9eKGF8KVwxK2IvCiAgICBhYWIKIDA6IGFhYgogMTogYQogICAgYWFhYWIKIDA6IGFhYWFiCiAxOiBhCiAgICBiCiAwOiBiCiAxOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYgpObyBtYXRjaAoKL14oYXwpXDE/Yi8KICAgIGFiCiAwOiBhYgogMTogYQogICAgYWFiCiAwOiBhYWIKIDE6IGEKICAgIGIKIDA6IGIKIDE6IApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFjYgpObyBtYXRjaAoKL14oYXwpXDF7Mn1iLwogICAgYWFhYgogMDogYWFhYgogMTogYQogICAgYgogMDogYgogMTogClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWIKTm8gbWF0Y2gKICAgIGFhYgpObyBtYXRjaAogICAgYWFhYWIKTm8gbWF0Y2gKCi9eKGF8KVwxezIsM31iLwogICAgYWFhYgogMDogYWFhYgogMTogYQogICAgYWFhYWIKIDA6IGFhYWFiCiAxOiBhCiAgICBiCiAwOiBiCiAxOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYgpObyBtYXRjaAogICAgYWFiCk5vIG1hdGNoCiAgICBhYWFhYWIKTm8gbWF0Y2gKCi9hYnsxLDN9YmMvCiAgICBhYmJiYmMKIDA6IGFiYmJiYwogICAgYWJiYmMKIDA6IGFiYmJjCiAgICBhYmJjCiAwOiBhYmJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjCk5vIG1hdGNoCiAgICBhYmJiYmJjCk5vIG1hdGNoCgovKFteLl0qKVwuKFteOl0qKTpbVCBdKyguKikvCiAgICB0cmFjazEudGl0bGU6VEJsYWggYmxhaCBibGFoCiAwOiB0cmFjazEudGl0bGU6VEJsYWggYmxhaCBibGFoCiAxOiB0cmFjazEKIDI6IHRpdGxlCiAzOiBCbGFoIGJsYWggYmxhaAoKLyhbXi5dKilcLihbXjpdKik6W1QgXSsoLiopL2kKICAgIHRyYWNrMS50aXRsZTpUQmxhaCBibGFoIGJsYWgKIDA6IHRyYWNrMS50aXRsZTpUQmxhaCBibGFoIGJsYWgKIDE6IHRyYWNrMQogMjogdGl0bGUKIDM6IEJsYWggYmxhaCBibGFoCgovKFteLl0qKVwuKFteOl0qKTpbdCBdKyguKikvaQogICAgdHJhY2sxLnRpdGxlOlRCbGFoIGJsYWggYmxhaAogMDogdHJhY2sxLnRpdGxlOlRCbGFoIGJsYWggYmxhaAogMTogdHJhY2sxCiAyOiB0aXRsZQogMzogQmxhaCBibGFoIGJsYWgKCi9eW1ctY10rJC8KICAgIFdYWV9eYWJjCiAwOiBXWFlfXmFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHd4eQpObyBtYXRjaAoKL15bVy1jXSskL2kKICAgIFdYWV9eYWJjCiAwOiBXWFlfXmFiYwogICAgd3h5X15BQkMKIDA6IHd4eV9eQUJDCgovXltceDNmLVx4NUZdKyQvaQogICAgV1hZX15hYmMKIDA6IFdYWV9eYWJjCiAgICB3eHlfXkFCQwogMDogd3h5X15BQkMKCi9eYWJjJC9tCiAgICBhYmMKIDA6IGFiYwogICAgcXFxXG5hYmMKIDA6IGFiYwogICAgYWJjXG56enoKIDA6IGFiYwogICAgcXFxXG5hYmNcbnp6egogMDogYWJjCgovXmFiYyQvCiAgICBhYmMKIDA6IGFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHFxcVxuYWJjCk5vIG1hdGNoCiAgICBhYmNcbnp6egpObyBtYXRjaAogICAgcXFxXG5hYmNcbnp6egpObyBtYXRjaAoKL1xBYWJjXFovbQogICAgYWJjCiAwOiBhYmMKICAgIGFiY1xuIAogMDogYWJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgcXFxXG5hYmMKTm8gbWF0Y2gKICAgIGFiY1xuenp6Ck5vIG1hdGNoCiAgICBxcXFcbmFiY1xuenp6Ck5vIG1hdGNoCiAgICAKL1xBKC4pKlxaL3MKICAgIGFiY1xuZGVmCiAwOiBhYmNceDBhZGVmCiAxOiBmCgovXEEoLikqXFovbQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY1xuZGVmCk5vIG1hdGNoCgovKD86Yil8KD86OispLwogICAgYjo6YwogMDogYgogICAgYzo6YgogMDogOjoKCi9bLWF6XSsvCiAgICBhei0KIDA6IGF6LQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGIKTm8gbWF0Y2gKCi9bYXotXSsvCiAgICB6YS0KIDA6IHphLQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGIKTm8gbWF0Y2gKCi9bYVwtel0rLwogICAgYS16CiAwOiBhLXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiCk5vIG1hdGNoCgovW2Etel0rLwogICAgYWJjZHh5egogMDogYWJjZHh5egoKL1tcZC1dKy8KICAgIDEyLTM0CiAwOiAxMi0zNApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYQpObyBtYXRjaAoKL1tcZC16XSsvCiAgICAxMi0zNHoKIDA6IDEyLTM0egpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYQpObyBtYXRjaAoKL1x4NWMvCiAgICBcXAogMDogXAoKL1x4MjBaLwogICAgdGhlIFpvbwogMDogIFoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBadWx1Ck5vIG1hdGNoCgovKGFiYylcMS9pCiAgICBhYmNhYmMKIDA6IGFiY2FiYwogMTogYWJjCiAgICBBQkNhYmMKIDA6IEFCQ2FiYwogMTogQUJDCiAgICBhYmNBQkMKIDA6IGFiY0FCQwogMTogYWJjCgovYWJjJC8KICAgIGFiYwogMDogYWJjCiAgICBhYmNcbgogMDogYWJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjXG5kZWYKTm8gbWF0Y2gKCi8oYWJjKVwxMjMvCiAgICBhYmNceDUzCiAwOiBhYmNTCiAxOiBhYmMKCi8oYWJjKVwyMjMvCiAgICBhYmNceDkzCiAwOiBhYmNceDkzCiAxOiBhYmMKCi8oYWJjKVwzMjMvCiAgICBhYmNceGQzCiAwOiBhYmNceGQzCiAxOiBhYmMKCi8oYWJjKVwxMDAvCiAgICBhYmNceDQwCiAwOiBhYmNACiAxOiBhYmMKICAgIGFiY1wxMDAKIDA6IGFiY0AKIDE6IGFiYwoKLyhhYmMpXDEwMDAvCiAgICBhYmNceDQwMAogMDogYWJjQDAKIDE6IGFiYwogICAgYWJjXHg0MFx4MzAKIDA6IGFiY0AwCiAxOiBhYmMKICAgIGFiY1wxMDAwCiAwOiBhYmNAMAogMTogYWJjCiAgICBhYmNcMTAwXHgzMAogMDogYWJjQDAKIDE6IGFiYwogICAgYWJjXDEwMFwwNjAKIDA6IGFiY0AwCiAxOiBhYmMKICAgIGFiY1wxMDBcNjAKIDA6IGFiY0AwCiAxOiBhYmMKICAgIAovXihBKShCKShDKShEKShFKShGKShHKShIKShJKVw4XDkkLwogICAgQUJDREVGR0hJSEkgCiAwOiBBQkNERUZHSElISQogMTogQQogMjogQgogMzogQwogNDogRAogNTogRQogNjogRgogNzogRwogODogSAogOTogSQoKL15bQVw4Qlw5Q10rJC8KICAgIEE4QjlDCiAwOiBBOEI5QwpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBBOEI5Q1x4MDAKTm8gbWF0Y2gKCi8oYSkoYikoYykoZCkoZSkoZikoZykoaCkoaSkoaikoaykobClcMTJcMTIzLwogICAgYWJjZGVmZ2hpamtsbFMKIDA6IGFiY2RlZmdoaWprbGxTCiAxOiBhCiAyOiBiCiAzOiBjCiA0OiBkCiA1OiBlCiA2OiBmCiA3OiBnCiA4OiBoCiA5OiBpCjEwOiBqCjExOiBrCjEyOiBsCgovKGEpKGIpKGMpKGQpKGUpKGYpKGcpKGgpKGkpKGopKGspXDEyXDEyMy8KICAgIGFiY2RlZmdoaWprXDEyUwogMDogYWJjZGVmZ2hpamtceDBhUwogMTogYQogMjogYgogMzogYwogNDogZAogNTogZQogNjogZgogNzogZwogODogaAogOTogaQoxMDogagoxMTogawoKL2F7MH1iYy8KICAgIGJjCiAwOiBiYwoKLyhhfChiYykpezAsMH0/eHl6LwogICAgeHl6CiAwOiB4eXoKCi9hYmNbXDEwXWRlLwogICAgYWJjXDAxMGRlCiAwOiBhYmNceDA4ZGUKCi9hYmNbXDFdZGUvCiAgICBhYmNcMWRlCiAwOiBhYmNceDAxZGUKCi8oYWJjKVtcMV1kZS8KICAgIGFiY1wxZGUKIDA6IGFiY1x4MDFkZQogMTogYWJjCgovKD9zKWEuYi8KICAgIGFcbmIKIDA6IGFceDBhYgoKL14oW15hXSkoW15cYl0pKFteY10qKShbXmRdezMsNH0pLwogICAgYmFOT1RjY2NjZAogMDogYmFOT1RjY2NjCiAxOiBiCiAyOiBhCiAzOiBOT1QKIDQ6IGNjY2MKICAgIGJhTk9UY2NjZAogMDogYmFOT1RjY2MKIDE6IGIKIDI6IGEKIDM6IE5PVAogNDogY2NjCiAgICBiYU5PVGNjZAogMDogYmFOT1RjYwogMTogYgogMjogYQogMzogTk8KIDQ6IFRjYwogICAgYmFjY2NkCiAwOiBiYWNjYwogMTogYgogMjogYQogMzogCiA0OiBjY2MKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhbnl0aGluZwpObyBtYXRjaAogICAgYlxiYyAgIApObyBtYXRjaAogICAgYmFjY2QKTm8gbWF0Y2gKCi9bXmFdLwogICAgQWJjCiAwOiBBCiAgCi9bXmFdL2kKICAgIEFiYyAKIDA6IGIKCi9bXmFdKy8KICAgIEFBQWFBYmMKIDA6IEFBQQogIAovW15hXSsvaQogICAgQUFBYUFiYyAKIDA6IGJjCgovW15hXSsvCiAgICBiYmJcbmNjYwogMDogYmJiXHgwYWNjYwogICAKL1tea10kLwogICAgYWJjCiAwOiBjClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJrICAgCk5vIG1hdGNoCiAgIAovW15rXXsyLDN9JC8KICAgIGFiYwogMDogYWJjCiAgICBrYmMKIDA6IGJjCiAgICBrYWJjIAogMDogYWJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJrCk5vIG1hdGNoCiAgICBha2IKTm8gbWF0Y2gKICAgIGFrayAKTm8gbWF0Y2gKCi9eXGR7OCx9XEAuK1tea10kLwogICAgMTIzNDU2NzhcQGEuYi5jLmQKIDA6IDEyMzQ1Njc4QGEuYi5jLmQKICAgIDEyMzQ1Njc4OVxAeC55LnoKIDA6IDEyMzQ1Njc4OUB4LnkuegpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDEyMzQ1Njc4XEB4LnkudWsKTm8gbWF0Y2gKICAgIDEyMzQ1NjdcQGEuYi5jLmQgICAgICAgCk5vIG1hdGNoCgovKGEpXDF7OCx9LwogICAgYWFhYWFhYWFhCiAwOiBhYWFhYWFhYWEKIDE6IGEKICAgIGFhYWFhYWFhYWEKIDA6IGFhYWFhYWFhYWEKIDE6IGEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFhYWFhICAgCk5vIG1hdGNoCgovW15hXS8KICAgIGFhYWFiY2QKIDA6IGIKICAgIGFhQWFiY2QgCiAwOiBBCgovW15hXS9pCiAgICBhYWFhYmNkCiAwOiBiCiAgICBhYUFhYmNkIAogMDogYgoKL1teYXpdLwogICAgYWFhYWJjZAogMDogYgogICAgYWFBYWJjZCAKIDA6IEEKCi9bXmF6XS9pCiAgICBhYWFhYmNkCiAwOiBiCiAgICBhYUFhYmNkIAogMDogYgoKL1wwMDBcMDAxXDAwMlwwMDNcMDA0XDAwNVwwMDZcMDA3XDAxMFwwMTFcMDEyXDAxM1wwMTRcMDE1XDAxNlwwMTdcMDIwXDAyMVwwMjJcMDIzXDAyNFwwMjVcMDI2XDAyN1wwMzBcMDMxXDAzMlwwMzNcMDM0XDAzNVwwMzZcMDM3XDA0MFwwNDFcMDQyXDA0M1wwNDRcMDQ1XDA0NlwwNDdcMDUwXDA1MVwwNTJcMDUzXDA1NFwwNTVcMDU2XDA1N1wwNjBcMDYxXDA2MlwwNjNcMDY0XDA2NVwwNjZcMDY3XDA3MFwwNzFcMDcyXDA3M1wwNzRcMDc1XDA3NlwwNzdcMTAwXDEwMVwxMDJcMTAzXDEwNFwxMDVcMTA2XDEwN1wxMTBcMTExXDExMlwxMTNcMTE0XDExNVwxMTZcMTE3XDEyMFwxMjFcMTIyXDEyM1wxMjRcMTI1XDEyNlwxMjdcMTMwXDEzMVwxMzJcMTMzXDEzNFwxMzVcMTM2XDEzN1wxNDBcMTQxXDE0MlwxNDNcMTQ0XDE0NVwxNDZcMTQ3XDE1MFwxNTFcMTUyXDE1M1wxNTRcMTU1XDE1NlwxNTdcMTYwXDE2MVwxNjJcMTYzXDE2NFwxNjVcMTY2XDE2N1wxNzBcMTcxXDE3MlwxNzNcMTc0XDE3NVwxNzZcMTc3XDIwMFwyMDFcMjAyXDIwM1wyMDRcMjA1XDIwNlwyMDdcMjEwXDIxMVwyMTJcMjEzXDIxNFwyMTVcMjE2XDIxN1wyMjBcMjIxXDIyMlwyMjNcMjI0XDIyNVwyMjZcMjI3XDIzMFwyMzFcMjMyXDIzM1wyMzRcMjM1XDIzNlwyMzdcMjQwXDI0MVwyNDJcMjQzXDI0NFwyNDVcMjQ2XDI0N1wyNTBcMjUxXDI1MlwyNTNcMjU0XDI1NVwyNTZcMjU3XDI2MFwyNjFcMjYyXDI2M1wyNjRcMjY1XDI2NlwyNjdcMjcwXDI3MVwyNzJcMjczXDI3NFwyNzVcMjc2XDI3N1wzMDBcMzAxXDMwMlwzMDNcMzA0XDMwNVwzMDZcMzA3XDMxMFwzMTFcMzEyXDMxM1wzMTRcMzE1XDMxNlwzMTdcMzIwXDMyMVwzMjJcMzIzXDMyNFwzMjVcMzI2XDMyN1wzMzBcMzMxXDMzMlwzMzNcMzM0XDMzNVwzMzZcMzM3XDM0MFwzNDFcMzQyXDM0M1wzNDRcMzQ1XDM0NlwzNDdcMzUwXDM1MVwzNTJcMzUzXDM1NFwzNTVcMzU2XDM1N1wzNjBcMzYxXDM2MlwzNjNcMzY0XDM2NVwzNjZcMzY3XDM3MFwzNzFcMzcyXDM3M1wzNzRcMzc1XDM3NlwzNzcvCiBcMDAwXDAwMVwwMDJcMDAzXDAwNFwwMDVcMDA2XDAwN1wwMTBcMDExXDAxMlwwMTNcMDE0XDAxNVwwMTZcMDE3XDAyMFwwMjFcMDIyXDAyM1wwMjRcMDI1XDAyNlwwMjdcMDMwXDAzMVwwMzJcMDMzXDAzNFwwMzVcMDM2XDAzN1wwNDBcMDQxXDA0MlwwNDNcMDQ0XDA0NVwwNDZcMDQ3XDA1MFwwNTFcMDUyXDA1M1wwNTRcMDU1XDA1NlwwNTdcMDYwXDA2MVwwNjJcMDYzXDA2NFwwNjVcMDY2XDA2N1wwNzBcMDcxXDA3MlwwNzNcMDc0XDA3NVwwNzZcMDc3XDEwMFwxMDFcMTAyXDEwM1wxMDRcMTA1XDEwNlwxMDdcMTEwXDExMVwxMTJcMTEzXDExNFwxMTVcMTE2XDExN1wxMjBcMTIxXDEyMlwxMjNcMTI0XDEyNVwxMjZcMTI3XDEzMFwxMzFcMTMyXDEzM1wxMzRcMTM1XDEzNlwxMzdcMTQwXDE0MVwxNDJcMTQzXDE0NFwxNDVcMTQ2XDE0N1wxNTBcMTUxXDE1MlwxNTNcMTU0XDE1NVwxNTZcMTU3XDE2MFwxNjFcMTYyXDE2M1wxNjRcMTY1XDE2NlwxNjdcMTcwXDE3MVwxNzJcMTczXDE3NFwxNzVcMTc2XDE3N1wyMDBcMjAxXDIwMlwyMDNcMjA0XDIwNVwyMDZcMjA3XDIxMFwyMTFcMjEyXDIxM1wyMTRcMjE1XDIxNlwyMTdcMjIwXDIyMVwyMjJcMjIzXDIyNFwyMjVcMjI2XDIyN1wyMzBcMjMxXDIzMlwyMzNcMjM0XDIzNVwyMzZcMjM3XDI0MFwyNDFcMjQyXDI0M1wyNDRcMjQ1XDI0NlwyNDdcMjUwXDI1MVwyNTJcMjUzXDI1NFwyNTVcMjU2XDI1N1wyNjBcMjYxXDI2MlwyNjNcMjY0XDI2NVwyNjZcMjY3XDI3MFwyNzFcMjcyXDI3M1wyNzRcMjc1XDI3NlwyNzdcMzAwXDMwMVwzMDJcMzAzXDMwNFwzMDVcMzA2XDMwN1wzMTBcMzExXDMxMlwzMTNcMzE0XDMxNVwzMTZcMzE3XDMyMFwzMjFcMzIyXDMyM1wzMjRcMzI1XDMyNlwzMjdcMzMwXDMzMVwzMzJcMzMzXDMzNFwzMzVcMzM2XDMzN1wzNDBcMzQxXDM0MlwzNDNcMzQ0XDM0NVwzNDZcMzQ3XDM1MFwzNTFcMzUyXDM1M1wzNTRcMzU1XDM1NlwzNTdcMzYwXDM2MVwzNjJcMzYzXDM2NFwzNjVcMzY2XDM2N1wzNzBcMzcxXDM3MlwzNzNcMzc0XDM3NVwzNzZcMzc3CiAwOiBceDAwXHgwMVx4MDJceDAzXHgwNFx4MDVceDA2XHgwN1x4MDhceDA5XHgwYVx4MGJceDBjXHgwZFx4MGVceDBmXHgxMFx4MTFceDEyXHgxM1x4MTRceDE1XHgxNlx4MTdceDE4XHgxOVx4MWFceDFiXHgxY1x4MWRceDFlXHgxZiAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+XHg3Zlx4ODBceDgxXHg4Mlx4ODNceDg0XHg4NVx4ODZceDg3XHg4OFx4ODlceDhhXHg4Ylx4OGNceDhkXHg4ZVx4OGZceDkwXHg5MVx4OTJceDkzXHg5NFx4OTVceDk2XHg5N1x4OThceDk5XHg5YVx4OWJceDljXHg5ZFx4OWVceDlmXHhhMFx4YTFceGEyXHhhM1x4YTRceGE1XHhhNlx4YTdceGE4XHhhOVx4YWFceGFiXHhhY1x4YWRceGFlXHhhZlx4YjBceGIxXHhiMlx4YjNceGI0XHhiNVx4YjZceGI3XHhiOFx4YjlceGJhXHhiYlx4YmNceGJkXHhiZVx4YmZceGMwXHhjMVx4YzJceGMzXHhjNFx4YzVceGM2XHhjN1x4YzhceGM5XHhjYVx4Y2JceGNjXHhjZFx4Y2VceGNmXHhkMFx4ZDFceGQyXHhkM1x4ZDRceGQ1XHhkNlx4ZDdceGQ4XHhkOVx4ZGFceGRiXHhkY1x4ZGRceGRlXHhkZlx4ZTBceGUxXHhlMlx4ZTNceGU0XHhlNVx4ZTZceGU3XHhlOFx4ZTlceGVhXHhlYlx4ZWNceGVkXHhlZVx4ZWZceGYwXHhmMVx4ZjJceGYzXHhmNFx4ZjVceGY2XHhmN1x4ZjhceGY5XHhmYVx4ZmJceGZjXHhmZFx4ZmVceGZmCgovUFteKl1UQUlSRVteKl17MSw2fT9MTC8KICAgIHh4eHh4eHh4eHh4UFNUQUlSRUlTTEx4eHh4eHh4eHgKIDA6IFBTVEFJUkVJU0xMCgovUFteKl1UQUlSRVteKl17MSx9P0xMLwogICAgeHh4eHh4eHh4eHhQU1RBSVJFSVNMTHh4eHh4eHh4eAogMDogUFNUQUlSRUlTTEwKCi8oXC5cZFxkWzEtOV0/KVxkKy8KICAgIDEuMjMwMDAzOTM4CiAwOiAuMjMwMDAzOTM4CiAxOiAuMjMKICAgIDEuODc1MDAwMjgyICAgCiAwOiAuODc1MDAwMjgyCiAxOiAuODc1CiAgICAxLjIzNSAgCiAwOiAuMjM1CiAxOiAuMjMKICAgICAgICAgICAgICAgICAgCi8oXC5cZFxkKCg/PTApfFxkKD89XGQpKSkvCiAgICAxLjIzMDAwMzkzOCAgICAgIAogMDogLjIzCiAxOiAuMjMKIDI6IAogICAgMS44NzUwMDAyODIKIDA6IC44NzUKIDE6IC44NzUKIDI6IDUKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgMS4yMzUgCk5vIG1hdGNoCiAgICAKL2EoPyliLwogICAgYWIgCiAwOiBhYgogCi9cYihmb28pXHMrKFx3KykvaQogICAgRm9vZCBpcyBvbiB0aGUgZm9vIHRhYmxlCiAwOiBmb28gdGFibGUKIDE6IGZvbwogMjogdGFibGUKICAgIAovZm9vKC4qKWJhci8KICAgIFRoZSBmb29kIGlzIHVuZGVyIHRoZSBiYXIgaW4gdGhlIGJhcm4uCiAwOiBmb29kIGlzIHVuZGVyIHRoZSBiYXIgaW4gdGhlIGJhcgogMTogZCBpcyB1bmRlciB0aGUgYmFyIGluIHRoZSAKICAgIAovZm9vKC4qPyliYXIvCiAgICBUaGUgZm9vZCBpcyB1bmRlciB0aGUgYmFyIGluIHRoZSBiYXJuLgogMDogZm9vZCBpcyB1bmRlciB0aGUgYmFyCiAxOiBkIGlzIHVuZGVyIHRoZSAKCi8oLiopKFxkKikvCiAgICBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMDogSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDE6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAyOiAKICAgIAovKC4qKShcZCspLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAxOiBJIGhhdmUgMiBudW1iZXJzOiA1MzE0CiAyOiA3CiAKLyguKj8pKFxkKikvCiAgICBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMDogCiAxOiAKIDI6IAoKLyguKj8pKFxkKykvCiAgICBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMDogSSBoYXZlIDIKIDE6IEkgaGF2ZSAKIDI6IDIKCi8oLiopKFxkKykkLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAxOiBJIGhhdmUgMiBudW1iZXJzOiA1MzE0CiAyOiA3CgovKC4qPykoXGQrKSQvCiAgICBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMDogSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDE6IEkgaGF2ZSAyIG51bWJlcnM6IAogMjogNTMxNDcKCi8oLiopXGIoXGQrKSQvCiAgICBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMDogSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDE6IEkgaGF2ZSAyIG51bWJlcnM6IAogMjogNTMxNDcKCi8oLipcRCkoXGQrKSQvCiAgICBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMDogSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDE6IEkgaGF2ZSAyIG51bWJlcnM6IAogMjogNTMxNDcKCi9eXEQqKD8hMTIzKS8KICAgIEFCQzEyMwogMDogQUIKICAgICAKL14oXEQqKSg/PVxkKSg/ITEyMykvCiAgICBBQkM0NDUKIDA6IEFCQwogMTogQUJDClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUJDMTIzCk5vIG1hdGNoCiAgICAKL15bVy1dNDZdLwogICAgVzQ2XTc4OSAKIDA6IFc0Nl0KICAgIC00Nl03ODkKIDA6IC00Nl0KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBXYWxsCk5vIG1hdGNoCiAgICBaZWJyYQpObyBtYXRjaAogICAgNDIKTm8gbWF0Y2gKICAgIFthYmNkXSAKTm8gbWF0Y2gKICAgIF1hYmNkWwpObyBtYXRjaAogICAgICAgCi9eW1ctXF00Nl0vCiAgICBXNDZdNzg5IAogMDogVwogICAgV2FsbAogMDogVwogICAgWmVicmEKIDA6IFoKICAgIFh5bG9waG9uZSAgCiAwOiBYCiAgICA0MgogMDogNAogICAgW2FiY2RdIAogMDogWwogICAgXWFiY2RbCiAwOiBdCiAgICBcXGJhY2tzbGFzaCAKIDA6IFwKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAtNDZdNzg5Ck5vIG1hdGNoCiAgICB3ZWxsCk5vIG1hdGNoCiAgICAKL1xkXGRcL1xkXGRcL1xkXGRcZFxkLwogICAgMDEvMDEvMjAwMAogMDogMDEvMDEvMjAwMAoKL3dvcmQgKD86W2EtekEtWjAtOV0rICl7MCwxMH1vdGhlcndvcmQvCiAgICB3b3JkIGNhdCBkb2cgZWxlcGhhbnQgbXVzc2VsIGNvdyBob3JzZSBjYW5hcnkgYmFib29uIHNuYWtlIHNoYXJrIG90aGVyd29yZAogMDogd29yZCBjYXQgZG9nIGVsZXBoYW50IG11c3NlbCBjb3cgaG9yc2UgY2FuYXJ5IGJhYm9vbiBzbmFrZSBzaGFyayBvdGhlcndvcmQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB3b3JkIGNhdCBkb2cgZWxlcGhhbnQgbXVzc2VsIGNvdyBob3JzZSBjYW5hcnkgYmFib29uIHNuYWtlIHNoYXJrCk5vIG1hdGNoCgovd29yZCAoPzpbYS16QS1aMC05XSsgKXswLDMwMH1vdGhlcndvcmQvClw9IEV4cGVjdCBubyBtYXRjaAogICAgd29yZCBjYXQgZG9nIGVsZXBoYW50IG11c3NlbCBjb3cgaG9yc2UgY2FuYXJ5IGJhYm9vbiBzbmFrZSBzaGFyayB0aGUgcXVpY2sgYnJvd24gZm94IGFuZCB0aGUgbGF6eSBkb2cgYW5kIHNldmVyYWwgb3RoZXIgd29yZHMgZ2V0dGluZyBjbG9zZSB0byB0aGlydHkgYnkgbm93IEkgaG9wZQpObyBtYXRjaAoKL14oYSl7MCwwfS8KICAgIGJjZAogMDogCiAgICBhYmMKIDA6IAogICAgYWFiICAgICAKIDA6IAoKL14oYSl7MCwxfS8KICAgIGJjZAogMDogCiAgICBhYmMKIDA6IGEKIDE6IGEKICAgIGFhYiAgCiAwOiBhCiAxOiBhCgovXihhKXswLDJ9LwogICAgYmNkCiAwOiAKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiICAKIDA6IGFhCiAxOiBhCgovXihhKXswLDN9LwogICAgYmNkCiAwOiAKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiCiAwOiBhYQogMTogYQogICAgYWFhICAgCiAwOiBhYWEKIDE6IGEKCi9eKGEpezAsfS8KICAgIGJjZAogMDogCiAgICBhYmMKIDA6IGEKIDE6IGEKICAgIGFhYgogMDogYWEKIDE6IGEKICAgIGFhYQogMDogYWFhCiAxOiBhCiAgICBhYWFhYWFhYSAgICAKIDA6IGFhYWFhYWFhCiAxOiBhCgovXihhKXsxLDF9LwogICAgYWJjCiAwOiBhCiAxOiBhCiAgICBhYWIgIAogMDogYQogMTogYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJjZApObyBtYXRjaAoKL14oYSl7MSwyfS8KICAgIGFiYwogMDogYQogMTogYQogICAgYWFiICAKIDA6IGFhCiAxOiBhClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmNkCk5vIG1hdGNoCgovXihhKXsxLDN9LwogICAgYWJjCiAwOiBhCiAxOiBhCiAgICBhYWIKIDA6IGFhCiAxOiBhCiAgICBhYWEgICAKIDA6IGFhYQogMTogYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJjZApObyBtYXRjaAoKL14oYSl7MSx9LwogICAgYWJjCiAwOiBhCiAxOiBhCiAgICBhYWIKIDA6IGFhCiAxOiBhCiAgICBhYWEKIDA6IGFhYQogMTogYQogICAgYWFhYWFhYWEgICAgCiAwOiBhYWFhYWFhYQogMTogYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJjZApObyBtYXRjaAoKLy4qXC5naWYvCiAgICBib3JmbGVcbmJpYi5naWZcbm5vCiAwOiBiaWIuZ2lmCgovLnswLH1cLmdpZi8KICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IGJpYi5naWYKCi8uKlwuZ2lmL20KICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IGJpYi5naWYKCi8uKlwuZ2lmL3MKICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IGJvcmZsZVx4MGFiaWIuZ2lmCgovLipcLmdpZi9tcwogICAgYm9yZmxlXG5iaWIuZ2lmXG5ubwogMDogYm9yZmxlXHgwYWJpYi5naWYKICAgIAovLiokLwogICAgYm9yZmxlXG5iaWIuZ2lmXG5ubwogMDogbm8KCi8uKiQvbQogICAgYm9yZmxlXG5iaWIuZ2lmXG5ubwogMDogYm9yZmxlCgovLiokL3MKICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IGJvcmZsZVx4MGFiaWIuZ2lmXHgwYW5vCgovLiokL21zCiAgICBib3JmbGVcbmJpYi5naWZcbm5vCiAwOiBib3JmbGVceDBhYmliLmdpZlx4MGFubwogICAgCi8uKiQvCiAgICBib3JmbGVcbmJpYi5naWZcbm5vXG4KIDA6IG5vCgovLiokL20KICAgIGJvcmZsZVxuYmliLmdpZlxubm9cbgogMDogYm9yZmxlCgovLiokL3MKICAgIGJvcmZsZVxuYmliLmdpZlxubm9cbgogMDogYm9yZmxlXHgwYWJpYi5naWZceDBhbm9ceDBhCgovLiokL21zCiAgICBib3JmbGVcbmJpYi5naWZcbm5vXG4KIDA6IGJvcmZsZVx4MGFiaWIuZ2lmXHgwYW5vXHgwYQogICAgCi8oLipYfF5CKS8KICAgIGFiY2RlXG4xMjM0WHl6CiAwOiAxMjM0WAogMTogMTIzNFgKICAgIEJhckZvbyAKIDA6IEIKIDE6IEIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkZVxuQmFyICAKTm8gbWF0Y2gKCi8oLipYfF5CKS9tCiAgICBhYmNkZVxuMTIzNFh5egogMDogMTIzNFgKIDE6IDEyMzRYCiAgICBCYXJGb28gCiAwOiBCCiAxOiBCCiAgICBhYmNkZVxuQmFyICAKIDA6IEIKIDE6IEIKCi8oLipYfF5CKS9zCiAgICBhYmNkZVxuMTIzNFh5egogMDogYWJjZGVceDBhMTIzNFgKIDE6IGFiY2RlXHgwYTEyMzRYCiAgICBCYXJGb28gCiAwOiBCCiAxOiBCClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjZGVcbkJhciAgCk5vIG1hdGNoCgovKC4qWHxeQikvbXMKICAgIGFiY2RlXG4xMjM0WHl6CiAwOiBhYmNkZVx4MGExMjM0WAogMTogYWJjZGVceDBhMTIzNFgKICAgIEJhckZvbyAKIDA6IEIKIDE6IEIKICAgIGFiY2RlXG5CYXIgIAogMDogQgogMTogQgoKLyg/cykoLipYfF5CKS8KICAgIGFiY2RlXG4xMjM0WHl6CiAwOiBhYmNkZVx4MGExMjM0WAogMTogYWJjZGVceDBhMTIzNFgKICAgIEJhckZvbyAKIDA6IEIKIDE6IEIKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgYWJjZGVcbkJhciAgCk5vIG1hdGNoCgovKD9zOi4qWHxeQikvCiAgICBhYmNkZVxuMTIzNFh5egogMDogYWJjZGVceDBhMTIzNFgKICAgIEJhckZvbyAKIDA6IEIKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgYWJjZGVcbkJhciAgCk5vIG1hdGNoCgovXi4qQi8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNcbkIKTm8gbWF0Y2gKICAgICAKLyg/cyleLipCLwogICAgYWJjXG5CCiAwOiBhYmNceDBhQgoKLyg/bSleLipCLwogICAgYWJjXG5CCiAwOiBCCiAgICAgCi8oP21zKV4uKkIvCiAgICBhYmNcbkIKIDA6IGFiY1x4MGFCCgovKD9tcyleQi8KICAgIGFiY1xuQgogMDogQgoKLyg/cylCJC8KICAgIEJcbgogMDogQgoKL15bMC05XVswLTldWzAtOV1bMC05XVswLTldWzAtOV1bMC05XVswLTldWzAtOV1bMC05XVswLTldWzAtOV0vCiAgICAxMjM0NTY2NTQzMjEKIDA6IDEyMzQ1NjY1NDMyMQogIAovXlxkXGRcZFxkXGRcZFxkXGRcZFxkXGRcZC8KICAgIDEyMzQ1NjY1NDMyMSAKIDA6IDEyMzQ1NjY1NDMyMQoKL15bXGRdW1xkXVtcZF1bXGRdW1xkXVtcZF1bXGRdW1xkXVtcZF1bXGRdW1xkXVtcZF0vCiAgICAxMjM0NTY2NTQzMjEKIDA6IDEyMzQ1NjY1NDMyMQogIAovXlthYmNdezEyfS8KICAgIGFiY2FiY2FiY2FiYwogMDogYWJjYWJjYWJjYWJjCiAgICAKL15bYS1jXXsxMn0vCiAgICBhYmNhYmNhYmNhYmMKIDA6IGFiY2FiY2FiY2FiYwogICAgCi9eKGF8YnxjKXsxMn0vCiAgICBhYmNhYmNhYmNhYmMgCiAwOiBhYmNhYmNhYmNhYmMKIDE6IGMKCi9eW2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHkwMTIzNDU2Nzg5XS8KICAgIG4KIDA6IG4KXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgeiAKTm8gbWF0Y2gKCi9hYmNkZXswLDB9LwogICAgYWJjZAogMDogYWJjZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2UgIApObyBtYXRjaAoKL2FiW2NkXXswLDB9ZS8KICAgIGFiZQogMDogYWJlClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjZGUgCk5vIG1hdGNoCiAgICAKL2FiKGMpezAsMH1kLwogICAgYWJkCiAwOiBhYmQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkICAgCk5vIG1hdGNoCgovYShiKikvCiAgICBhCiAwOiBhCiAxOiAKICAgIGFiCiAwOiBhYgogMTogYgogICAgYWJiYmIKIDA6IGFiYmJiCiAxOiBiYmJiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmJiYmIgICAgCk5vIG1hdGNoCiAgICAKL2FiXGR7MH1lLwogICAgYWJlCiAwOiBhYmUKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYjFlICAgCk5vIG1hdGNoCiAgICAKLyIoW15cXCJdK3xcXC4pKiIvCiAgICB0aGUgXCJxdWlja1wiIGJyb3duIGZveAogMDogInF1aWNrIgogMTogcXVpY2sKICAgIFwidGhlIFxcXCJxdWlja1xcXCIgYnJvd24gZm94XCIgCiAwOiAidGhlIFwicXVpY2tcIiBicm93biBmb3giCiAxOiAgYnJvd24gZm94CgovLio/L2csYWZ0ZXJ0ZXh0CiAgICBhYmMKIDA6IAogMCsgYWJjCiAwOiBhCiAwKyBiYwogMDogCiAwKyBiYwogMDogYgogMCsgYwogMDogCiAwKyBjCiAwOiBjCiAwKyAKIDA6IAogMCsgCiAgCi9cYi9nLGFmdGVydGV4dAogICAgYWJjIAogMDogCiAwKyBhYmMKIDA6IAogMCsgCgovXGIvZyxhZnRlcnRleHQKICAgIGFiYyAKIDA6IAogMCsgYWJjCiAwOiAKIDArIAoKLy9nCiAgICBhYmMKIDA6IAogMDogCiAwOiAKIDA6IAoKLzx0cihbXHdcV1xzXGRdW148Pl17MCx9KT48VEQoW1x3XFdcc1xkXVtePD5dezAsfSk+KFtcZF17MCx9XC4pKC4qKSgoPEJSPihbXHdcV1xzXGRdW148Pl17MCx9KXxbXHNdezAsfSkpPFwvYT48XC9URD48VEQoW1x3XFdcc1xkXVtePD5dezAsfSk+KFtcd1xXXHNcZF1bXjw+XXswLH0pPFwvVEQ+PFREKFtcd1xXXHNcZF1bXjw+XXswLH0pPihbXHdcV1xzXGRdW148Pl17MCx9KTxcL1REPjxcL1RSPi9pcwogIDxUUiBCR0NPTE9SPScjREJFOUU5Jz48VEQgYWxpZ249bGVmdCB2YWxpZ249dG9wPjQzLjxhIGhyZWY9J2pvYmxpc3QuY2ZtP0pvYklEPTk0IDY3MzUmS2V5d29yZD0nPldvcmQgUHJvY2Vzc29yPEJSPihOLTEyODYpPC9hPjwvVEQ+PFREIGFsaWduPWxlZnQgdmFsaWduPXRvcD5MZWdhIGxzdGFmZi5jb208L1REPjxURCBhbGlnbj1sZWZ0IHZhbGlnbj10b3A+Q0EgLSBTdGF0ZXdpZGU8L1REPjwvVFI+CiAwOiA8VFIgQkdDT0xPUj0nI0RCRTlFOSc+PFREIGFsaWduPWxlZnQgdmFsaWduPXRvcD40My48YSBocmVmPSdqb2JsaXN0LmNmbT9Kb2JJRD05NCA2NzM1JktleXdvcmQ9Jz5Xb3JkIFByb2Nlc3NvcjxCUj4oTi0xMjg2KTwvYT48L1REPjxURCBhbGlnbj1sZWZ0IHZhbGlnbj10b3A+TGVnYSBsc3RhZmYuY29tPC9URD48VEQgYWxpZ249bGVmdCB2YWxpZ249dG9wPkNBIC0gU3RhdGV3aWRlPC9URD48L1RSPgogMTogIEJHQ09MT1I9JyNEQkU5RTknCiAyOiAgYWxpZ249bGVmdCB2YWxpZ249dG9wCiAzOiA0My4KIDQ6IDxhIGhyZWY9J2pvYmxpc3QuY2ZtP0pvYklEPTk0IDY3MzUmS2V5d29yZD0nPldvcmQgUHJvY2Vzc29yPEJSPihOLTEyODYpCiA1OiAKIDY6IAogNzogPHVuc2V0PgogODogIGFsaWduPWxlZnQgdmFsaWduPXRvcAogOTogTGVnYSBsc3RhZmYuY29tCjEwOiAgYWxpZ249bGVmdCB2YWxpZ249dG9wCjExOiBDQSAtIFN0YXRld2lkZQoKL2FbXmFdYi8KICAgIGFjYgogMDogYWNiCiAgICBhXG5iCiAwOiBhXHgwYWIKICAgIAovYS5iLwogICAgYWNiCiAwOiBhY2IKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgYVxuYiAgIApObyBtYXRjaAogICAgCi9hW15hXWIvcwogICAgYWNiCiAwOiBhY2IKICAgIGFcbmIgIAogMDogYVx4MGFiCiAgICAKL2EuYi9zCiAgICBhY2IKIDA6IGFjYgogICAgYVxuYiAgCiAwOiBhXHgwYWIKCi9eKGIrP3xhKXsxLDJ9P2MvCiAgICBiYWMKIDA6IGJhYwogMTogYQogICAgYmJhYwogMDogYmJhYwogMTogYQogICAgYmJiYWMKIDA6IGJiYmFjCiAxOiBhCiAgICBiYmJiYWMKIDA6IGJiYmJhYwogMTogYQogICAgYmJiYmJhYyAKIDA6IGJiYmJiYWMKIDE6IGEKCi9eKGIrfGEpezEsMn0/Yy8KICAgIGJhYwogMDogYmFjCiAxOiBhCiAgICBiYmFjCiAwOiBiYmFjCiAxOiBhCiAgICBiYmJhYwogMDogYmJiYWMKIDE6IGEKICAgIGJiYmJhYwogMDogYmJiYmFjCiAxOiBhCiAgICBiYmJiYmFjIAogMDogYmJiYmJhYwogMTogYQogICAgCi8oPyFcQSl4L20KICAgIGFcYnhcbgogMDogeAogICAgYVxueFxuCiAwOiB4Clw9IEV4cGVjdCBubyBtYXRjaCAgICAgCiAgICB4XG5iXG4KTm8gbWF0Y2gKICAgIAovKEF8QikqP0NELwogICAgQ0QgCiAwOiBDRAogICAgCi8oQXxCKSpDRC8KICAgIENEIAogMDogQ0QKCi8oQUIpKj9cMS8KICAgIEFCQUJBQgogMDogQUJBQgogMTogQUIKCi8oQUIpKlwxLwogICAgQUJBQkFCCiAwOiBBQkFCQUIKIDE6IEFCCiAgICAKLyg/PCFiYXIpZm9vLwogICAgZm9vCiAwOiBmb28KICAgIGNhdGZvb2QKIDA6IGZvbwogICAgYXJmb290bGUKIDA6IGZvbwogICAgcmZvb3NoCiAwOiBmb28KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiYXJmb28KTm8gbWF0Y2gKICAgIHRvd2JhcmZvbwpObyBtYXRjaAoKL1x3ezN9KD88IWJhcilmb28vCiAgICBjYXRmb29kCiAwOiBjYXRmb28KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBmb28KTm8gbWF0Y2gKICAgIGJhcmZvbwpObyBtYXRjaAogICAgdG93YmFyZm9vCk5vIG1hdGNoCgovKD88PShmb28pYSliYXIvCiAgICBmb29hYmFyCiAwOiBiYXIKIDE6IGZvbwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJhcgpObyBtYXRjaAogICAgZm9vYmJhcgpObyBtYXRjaAogICAgICAKL1xBYWJjXHovbQogICAgYWJjCiAwOiBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNcbiAgIApObyBtYXRjaAogICAgcXFxXG5hYmMKTm8gbWF0Y2gKICAgIGFiY1xuenp6Ck5vIG1hdGNoCiAgICBxcXFcbmFiY1xuenp6Ck5vIG1hdGNoCgoiKD8+LiovKWZvbyIKICAgIC90aGlzL2lzL2EvdmVyeS9sb25nL2xpbmUvaW4vZGVlZC93aXRoL3ZlcnkvbWFueS9zbGFzaGVzL2luL2FuZC9mb28KIDA6IC90aGlzL2lzL2EvdmVyeS9sb25nL2xpbmUvaW4vZGVlZC93aXRoL3ZlcnkvbWFueS9zbGFzaGVzL2luL2FuZC9mb28KXD0gRXhwZWN0IG5vIG1hdGNoICAgICAKICAgIC90aGlzL2lzL2EvdmVyeS9sb25nL2xpbmUvaW4vZGVlZC93aXRoL3ZlcnkvbWFueS9zbGFzaGVzL2luL2l0L3lvdS9zZWUvCk5vIG1hdGNoCgovKD8+KFwuXGRcZFsxLTldPykpXGQrLwogICAgMS4yMzAwMDM5MzgKIDA6IC4yMzAwMDM5MzgKIDE6IC4yMwogICAgMS44NzUwMDAyODIKIDA6IC44NzUwMDAyODIKIDE6IC44NzUKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgMS4yMzUgCk5vIG1hdGNoCgovXigoPz5cdyspfCg/PlxzKykpKiQvCiAgICBub3cgaXMgdGhlIHRpbWUgZm9yIGFsbCBnb29kIG1lbiB0byBjb21lIHRvIHRoZSBhaWQgb2YgdGhlIHBhcnR5CiAwOiBub3cgaXMgdGhlIHRpbWUgZm9yIGFsbCBnb29kIG1lbiB0byBjb21lIHRvIHRoZSBhaWQgb2YgdGhlIHBhcnR5CiAxOiBwYXJ0eQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHRoaXMgaXMgbm90IGEgbGluZSB3aXRoIG9ubHkgd29yZHMgYW5kIHNwYWNlcyEKTm8gbWF0Y2gKICAgIAovKFxkKykoXHcpLwogICAgMTIzNDVhCiAwOiAxMjM0NWEKIDE6IDEyMzQ1CiAyOiBhCiAgICAxMjM0NSsgCiAwOiAxMjM0NQogMTogMTIzNAogMjogNQoKLygoPz5cZCspKShcdykvCiAgICAxMjM0NWEKIDA6IDEyMzQ1YQogMTogMTIzNDUKIDI6IGEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0NSsgCk5vIG1hdGNoCgovKD8+YSspYi8KICAgIGFhYWIKIDA6IGFhYWIKCi8oKD8+YSspYikvCiAgICBhYWFiCiAwOiBhYWFiCiAxOiBhYWFiCgovKD8+KGErKSliLwogICAgYWFhYgogMDogYWFhYgogMTogYWFhCgovKD8+YikrLwogICAgYWFhYmJiY2NjCiAwOiBiYmIKCi8oPz5hK3xiK3xjKykqYy8KICAgIGFhYWJiYmJjY2NjZAogMDogYWFhYmJiYmMKCi8oKD8+W14oKV0rKXxcKFteKCldKlwpKSsvCiAgICAoKGFiYyhhZGUpdWZoKCkoKXgKIDA6IGFiYyhhZGUpdWZoKCkoKXgKIDE6IHgKICAgIAovXCgoKD8+W14oKV0rKXxcKFteKCldK1wpKStcKS8KICAgIChhYmMpCiAwOiAoYWJjKQogMTogYWJjCiAgICAoYWJjKGRlZil4eXopCiAwOiAoYWJjKGRlZil4eXopCiAxOiB4eXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAoKCgpYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEgICAKTm8gbWF0Y2gKCi9hKD8taSliL2kKICAgIGFiCiAwOiBhYgogICAgQWIKIDA6IEFiClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFCCk5vIG1hdGNoCiAgICBBQgpObyBtYXRjaAogICAgICAgIAovKGEgKD94KWIgYylkIGUvCiAgICBhIGJjZCBlCiAwOiBhIGJjZCBlCiAxOiBhIGJjClw9IEV4cGVjdCBubyBtYXRjaAogICAgYSBiIGNkIGUKTm8gbWF0Y2gKICAgIGFiY2QgZSAgIApObyBtYXRjaAogICAgYSBiY2RlIApObyBtYXRjaAogCi8oYSBiKD94KWMgZCAoPy14KWUgZikvCiAgICBhIGJjZGUgZgogMDogYSBiY2RlIGYKIDE6IGEgYmNkZSBmClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjZGVmICAKTm8gbWF0Y2gKCi8oYSg/aSliKWMvCiAgICBhYmMKIDA6IGFiYwogMTogYWIKICAgIGFCYwogMDogYUJjCiAxOiBhQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiQwpObyBtYXRjaAogICAgYUJDICAKTm8gbWF0Y2gKICAgIEFiYwpObyBtYXRjaAogICAgQUJjCk5vIG1hdGNoCiAgICBBQkMKTm8gbWF0Y2gKICAgIEFiQwpObyBtYXRjaAogICAgCi9hKD9pOmIpYy8KICAgIGFiYwogMDogYWJjCiAgICBhQmMKIDA6IGFCYwpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBBQkMKTm8gbWF0Y2gKICAgIGFiQwpObyBtYXRjaAogICAgYUJDCk5vIG1hdGNoCiAgICAKL2EoP2k6YikqYy8KICAgIGFCYwogMDogYUJjCiAgICBhQkJjCiAwOiBhQkJjClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFCQwpObyBtYXRjaAogICAgYUJCQwpObyBtYXRjaAogICAgCi9hKD89Yig/aSljKVx3XHdkLwogICAgYWJjZAogMDogYWJjZAogICAgYWJDZAogMDogYWJDZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFCQ2QKTm8gbWF0Y2gKICAgIGFiY0QgICAgIApObyBtYXRjaAogICAgCi8oP3MtaTptb3JlLip0aGFuKS4qbWlsbGlvbi9pCiAgICBtb3JlIHRoYW4gbWlsbGlvbgogMDogbW9yZSB0aGFuIG1pbGxpb24KICAgIG1vcmUgdGhhbiBNSUxMSU9OCiAwOiBtb3JlIHRoYW4gTUlMTElPTgogICAgbW9yZSBcbiB0aGFuIE1pbGxpb24gCiAwOiBtb3JlIFx4MGEgdGhhbiBNaWxsaW9uClw9IEV4cGVjdCBubyBtYXRjaAogICAgTU9SRSBUSEFOIE1JTExJT04gICAgCk5vIG1hdGNoCiAgICBtb3JlIFxuIHRoYW4gXG4gbWlsbGlvbiAKTm8gbWF0Y2gKCi8oPzooP3MtaSltb3JlLip0aGFuKS4qbWlsbGlvbi9pCiAgICBtb3JlIHRoYW4gbWlsbGlvbgogMDogbW9yZSB0aGFuIG1pbGxpb24KICAgIG1vcmUgdGhhbiBNSUxMSU9OCiAwOiBtb3JlIHRoYW4gTUlMTElPTgogICAgbW9yZSBcbiB0aGFuIE1pbGxpb24gCiAwOiBtb3JlIFx4MGEgdGhhbiBNaWxsaW9uClw9IEV4cGVjdCBubyBtYXRjaAogICAgTU9SRSBUSEFOIE1JTExJT04gICAgCk5vIG1hdGNoCiAgICBtb3JlIFxuIHRoYW4gXG4gbWlsbGlvbiAKTm8gbWF0Y2gKICAgIAovKD8+YSg/aSliKykrYy8KICAgIGFiYwogMDogYWJjCiAgICBhQmJjCiAwOiBhQmJjCiAgICBhQkJjIAogMDogYUJCYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFiYwpObyBtYXRjaAogICAgYWJBYiAgICAKTm8gbWF0Y2gKICAgIGFiYkMgCk5vIG1hdGNoCiAgICAKLyg/PWEoP2kpYilcd1x3Yy8KICAgIGFiYwogMDogYWJjCiAgICBhQmMKIDA6IGFCYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFiIApObyBtYXRjaAogICAgYWJDCk5vIG1hdGNoCiAgICBhQkMgICAgIApObyBtYXRjaAogICAgCi8oPzw9YSg/aSliKShcd1x3KWMvCiAgICBhYnh4YwogMDogeHhjCiAxOiB4eAogICAgYUJ4eGMKIDA6IHh4YwogMTogeHgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBYnh4YwpObyBtYXRjaAogICAgQUJ4eGMKTm8gbWF0Y2gKICAgIGFieHhDICAgICAgCk5vIG1hdGNoCgovKD86KGEpfGIpKD8oMSlBfEIpLwogICAgYUEKIDA6IGFBCiAxOiBhCiAgICBiQgogMDogYkIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhQgpObyBtYXRjaAogICAgYkEgICAgCk5vIG1hdGNoCgovXihhKT8oPygxKWF8YikrJC8KICAgIGFhCiAwOiBhYQogMTogYQogICAgYgogMDogYgogICAgYmIgIAogMDogYmIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYiAgIApObyBtYXRjaAogICAgCiMgUGVybCBnZXRzIHRoaXMgbmV4dCBvbmUgd3JvbmcgaWYgdGhlIHBhdHRlcm4gZW5kcyB3aXRoICQ7IGluIHRoYXQgY2FzZSBpdAojIGZhaWxzIHRvIG1hdGNoICIxMiIuIAoKL14oPyg/PWFiYylcd3szfTp8XGRcZCkvCiAgICBhYmM6CiAwOiBhYmM6CiAgICAxMgogMDogMTIKICAgIDEyMwogMDogMTIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eXogICAgCk5vIG1hdGNoCgovXig/KD8hYWJjKVxkXGR8XHd7M306KSQvCiAgICBhYmM6CiAwOiBhYmM6CiAgICAxMgogMDogMTIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjMKTm8gbWF0Y2gKICAgIHh5eiAgICAKTm8gbWF0Y2gKICAgIAovKD8oPzw9Zm9vKWJhcnxjYXQpLwogICAgZm9vYmFyCiAwOiBiYXIKICAgIGNhdAogMDogY2F0CiAgICBmY2F0CiAwOiBjYXQKICAgIGZvY2F0ICAgCiAwOiBjYXQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBmb29jYXQgIApObyBtYXRjaAoKLyg/KD88IWZvbyljYXR8YmFyKS8KICAgIGZvb2JhcgogMDogYmFyCiAgICBjYXQKIDA6IGNhdAogICAgZmNhdAogMDogY2F0CiAgICBmb2NhdCAgIAogMDogY2F0Clw9IEV4cGVjdCBubyBtYXRjaAogICAgZm9vY2F0ICAKTm8gbWF0Y2gKCi8oIFwoICk/IFteKCldKyAoPygxKSBcKSB8KSAveAogICAgYWJjZAogMDogYWJjZAogICAgKGFiY2QpCiAwOiAoYWJjZCkKIDE6ICgKICAgIHRoZSBxdWljayAoYWJjZCkgZm94CiAwOiB0aGUgcXVpY2sgCiAgICAoYWJjZCAgIAogMDogYWJjZAoKLyggXCggKT8gW14oKV0rICg/KDEpIFwpICkgL3gKICAgIGFiY2QKIDA6IGFiY2QKICAgIChhYmNkKQogMDogKGFiY2QpCiAxOiAoCiAgICB0aGUgcXVpY2sgKGFiY2QpIGZveAogMDogdGhlIHF1aWNrIAogICAgKGFiY2QgICAKIDA6IGFiY2QKCi9eKD8oMilhfCgxKSgyKSkrJC8KICAgIDEyCiAwOiAxMgogMTogMQogMjogMgogICAgMTJhCiAwOiAxMmEKIDE6IDEKIDI6IDIKICAgIDEyYWEKIDA6IDEyYWEKIDE6IDEKIDI6IDIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0ICAgIApObyBtYXRjaAoKLygoP2kpYmxhaClccytcMS8KICAgIGJsYWggYmxhaAogMDogYmxhaCBibGFoCiAxOiBibGFoCiAgICBCTEFIIEJMQUgKIDA6IEJMQUggQkxBSAogMTogQkxBSAogICAgQmxhaCBCbGFoCiAwOiBCbGFoIEJsYWgKIDE6IEJsYWgKICAgIGJsYUggYmxhSAogMDogYmxhSCBibGFICiAxOiBibGFIClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmxhaCBCTEFICk5vIG1hdGNoCiAgICBCbGFoIGJsYWggICAgICAKTm8gbWF0Y2gKICAgIGJsYUggYmxhaCAKTm8gbWF0Y2gKCi8oKD9pKWJsYWgpXHMrKD9pOlwxKS8KICAgIGJsYWggYmxhaAogMDogYmxhaCBibGFoCiAxOiBibGFoCiAgICBCTEFIIEJMQUgKIDA6IEJMQUggQkxBSAogMTogQkxBSAogICAgQmxhaCBCbGFoCiAwOiBCbGFoIEJsYWgKIDE6IEJsYWgKICAgIGJsYUggYmxhSAogMDogYmxhSCBibGFICiAxOiBibGFICiAgICBibGFoIEJMQUgKIDA6IGJsYWggQkxBSAogMTogYmxhaAogICAgQmxhaCBibGFoICAgICAgCiAwOiBCbGFoIGJsYWgKIDE6IEJsYWgKICAgIGJsYUggYmxhaCAKIDA6IGJsYUggYmxhaAogMTogYmxhSAoKLyg/PmEqKSovCiAgICBhCiAwOiBhCiAgICBhYQogMDogYWEKICAgIGFhYWEKIDA6IGFhYWEKICAgIAovKGFiY3wpKy8KICAgIGFiYwogMDogYWJjCiAxOiAKICAgIGFiY2FiYwogMDogYWJjYWJjCiAxOiAKICAgIGFiY2FiY2FiYwogMDogYWJjYWJjYWJjCiAxOiAKICAgIHh5eiAgICAgIAogMDogCiAxOiAKCi8oW2FdKikqLwogICAgYQogMDogYQogMTogCiAgICBhYWFhYSAKIDA6IGFhYWFhCiAxOiAKIAovKFthYl0qKSovCiAgICBhCiAwOiBhCiAxOiAKICAgIGIKIDA6IGIKIDE6IAogICAgYWJhYmFiCiAwOiBhYmFiYWIKIDE6IAogICAgYWFhYWJjZGUKIDA6IGFhYWFiCiAxOiAKICAgIGJiYmIgICAgCiAwOiBiYmJiCiAxOiAKIAovKFteYV0qKSovCiAgICBiCiAwOiBiCiAxOiAKICAgIGJiYmIKIDA6IGJiYmIKIDE6IAogICAgYWFhICAgCiAwOiAKIDE6IAogCi8oW15hYl0qKSovCiAgICBjY2NjCiAwOiBjY2NjCiAxOiAKICAgIGFiYWIgIAogMDogCiAxOiAKIAovKFthXSo/KSovCiAgICBhCiAwOiAKIDE6IAogICAgYWFhYSAKIDA6IAogMTogCiAKLyhbYWJdKj8pKi8KICAgIGEKIDA6IAogMTogCiAgICBiCiAwOiAKIDE6IAogICAgYWJhYgogMDogCiAxOiAKICAgIGJhYmEgICAKIDA6IAogMTogCiAKLyhbXmFdKj8pKi8KICAgIGIKIDA6IAogMTogCiAgICBiYmJiCiAwOiAKIDE6IAogICAgYWFhICAgCiAwOiAKIDE6IAogCi8oW15hYl0qPykqLwogICAgYwogMDogCiAxOiAKICAgIGNjY2MKIDA6IAogMTogCiAgICBiYWJhICAgCiAwOiAKIDE6IAogCi8oPz5hKikqLwogICAgYQogMDogYQogICAgYWFhYmNkZSAKIDA6IGFhYQogCi8oKD8+YSopKSovCiAgICBhYWFhYQogMDogYWFhYWEKIDE6IAogICAgYWFiYmFhIAogMDogYWEKIDE6IAogCi8oKD8+YSo/KSkqLwogICAgYWFhYWEKIDA6IAogMTogCiAgICBhYWJiYWEgCiAwOiAKIDE6IAoKLyg/KD89W15hLXpdK1thLXpdKSAgXGR7Mn0tW2Etel17M30tXGR7Mn0gIHwgIFxkezJ9LVxkezJ9LVxkezJ9ICkgL3gKICAgIDEyLXNlcC05OAogMDogMTItc2VwLTk4CiAgICAxMi0wOS05OAogMDogMTItMDktOTgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBzZXAtMTItOTgKTm8gbWF0Y2gKICAgICAgICAKLyg/PD0oZm9vKSliYXJcMS8KICAgIGZvb2JhcmZvbwogMDogYmFyZm9vCiAxOiBmb28KICAgIGZvb2JhcmZvb3RsaW5nIAogMDogYmFyZm9vCiAxOiBmb28KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBmb29iYXIKTm8gbWF0Y2gKICAgIGJhcmZvbyAgIApObyBtYXRjaAoKLyg/aTpzYXR1cmRheXxzdW5kYXkpLwogICAgc2F0dXJkYXkKIDA6IHNhdHVyZGF5CiAgICBzdW5kYXkKIDA6IHN1bmRheQogICAgU2F0dXJkYXkKIDA6IFNhdHVyZGF5CiAgICBTdW5kYXkKIDA6IFN1bmRheQogICAgU0FUVVJEQVkKIDA6IFNBVFVSREFZCiAgICBTVU5EQVkKIDA6IFNVTkRBWQogICAgU3VuRGF5CiAwOiBTdW5EYXkKICAgIAovKGEoP2kpYmN8QkIpeC8KICAgIGFiY3gKIDA6IGFiY3gKIDE6IGFiYwogICAgYUJDeAogMDogYUJDeAogMTogYUJDCiAgICBiYngKIDA6IGJieAogMTogYmIKICAgIEJCeAogMDogQkJ4CiAxOiBCQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY1gKTm8gbWF0Y2gKICAgIGFCQ1gKTm8gbWF0Y2gKICAgIGJiWApObyBtYXRjaAogICAgQkJYICAgICAgICAgICAgICAgCk5vIG1hdGNoCgovXihbYWJdKD9pKVtjZF18W2VmXSkvCiAgICBhYwogMDogYWMKIDE6IGFjCiAgICBhQwogMDogYUMKIDE6IGFDCiAgICBiRAogMDogYkQKIDE6IGJECiAgICBlbGVwaGFudAogMDogZQogMTogZQogICAgRXVyb3BlIAogMDogRQogMTogRQogICAgZnJvZwogMDogZgogMTogZgogICAgRnJhbmNlCiAwOiBGCiAxOiBGClw9IEV4cGVjdCBubyBtYXRjaAogICAgQWZyaWNhICAgICAKTm8gbWF0Y2gKCi9eKGFifGEoP2kpW2ItY10oP20taSlkfHgoP2kpeXx6KS8KICAgIGFiCiAwOiBhYgogMTogYWIKICAgIGFCZAogMDogYUJkCiAxOiBhQmQKICAgIHh5CiAwOiB4eQogMTogeHkKICAgIHhZCiAwOiB4WQogMTogeFkKICAgIHplYnJhCiAwOiB6CiAxOiB6CiAgICBaYW1iZXNpCiAwOiBaCiAxOiBaClw9IEV4cGVjdCBubyBtYXRjaAogICAgYUNEICAKTm8gbWF0Y2gKICAgIFhZICAKTm8gbWF0Y2gKCi8oPzw9Zm9vXG4pXmJhci9tCiAgICBmb29cbmJhcgogMDogYmFyClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmFyCk5vIG1hdGNoCiAgICBiYXpcbmJhciAgIApObyBtYXRjaAoKLyg/PD0oPzwhZm9vKWJhciliYXovCiAgICBiYXJiYXoKIDA6IGJhegogICAgYmFyYmFyYmF6IAogMDogYmF6CiAgICBrb29iYXJiYXogCiAwOiBiYXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiYXoKTm8gbWF0Y2gKICAgIGZvb2JhcmJheiAKTm8gbWF0Y2gKCiMgVGhlIGNhc2VzIG9mIGFhYWEgYW5kIGFhYWFhYSBhcmUgbWlzc2VkIG91dCBiZWxvdyBiZWNhdXNlIFBlcmwgZG9lcyB0aGluZ3MKIyBkaWZmZXJlbnRseS4gV2Uga25vdyB0aGF0IG9kZCwgYW5kIG1heWJlIGluY29ycmVjdCwgdGhpbmdzIGhhcHBlbiB3aXRoCiMgcmVjdXJzaXZlIHJlZmVyZW5jZXMgaW4gUGVybCwgYXMgZmFyIGFzIDUuMTEuMyAtIHNlZSBzb21lIHN0dWZmIGluIHRlc3QgIzIuCgovXihhXDE/KXs0fSQvCiAgICBhYWFhYQogMDogYWFhYWEKIDE6IGEKICAgIGFhYWFhYWEKIDA6IGFhYWFhYWEKIDE6IGEKICAgIGFhYWFhYWFhYWEKIDA6IGFhYWFhYWFhYWEKIDE6IGFhYWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCiAgICBhYQpObyBtYXRjaAogICAgYWFhCk5vIG1hdGNoCiAgICBhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhCk5vIG1hdGNoCiAgICBhYWFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWFhCk5vIG1hdGNoCiAgICBhYWFhYWFhYWFhYWFhCk5vIG1hdGNoCiAgICBhYWFhYWFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWFhYWFhCk5vIG1hdGNoCiAgICBhYWFhYWFhYWFhYWFhYWFhCk5vIG1hdGNoCgovXihhXDE/KShhXDE/KShhXDI/KShhXDM/KSQvCiAgICBhYWFhCiAwOiBhYWFhCiAxOiBhCiAyOiBhCiAzOiBhCiA0OiBhCiAgICBhYWFhYQogMDogYWFhYWEKIDE6IGEKIDI6IGFhCiAzOiBhCiA0OiBhCiAgICBhYWFhYWEKIDA6IGFhYWFhYQogMTogYQogMjogYWEKIDM6IGEKIDQ6IGFhCiAgICBhYWFhYWFhCiAwOiBhYWFhYWFhCiAxOiBhCiAyOiBhYQogMzogYWFhCiA0OiBhCiAgICBhYWFhYWFhYWFhCiAwOiBhYWFhYWFhYWFhCiAxOiBhCiAyOiBhYQogMzogYWFhCiA0OiBhYWFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgYQpObyBtYXRjaAogICAgYWEKTm8gbWF0Y2gKICAgIGFhYQpObyBtYXRjaAogICAgYWFhYWFhYWEKTm8gbWF0Y2gKICAgIGFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWEKTm8gbWF0Y2gKICAgIGFhYWFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWFhYWEKTm8gbWF0Y2gKICAgIGFhYWFhYWFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWFhYWFhYSAgICAgICAgICAgICAgIApObyBtYXRjaAoKIyBUaGUgZm9sbG93aW5nIHRlc3RzIGFyZSB0YWtlbiBmcm9tIHRoZSBQZXJsIDUuMDA1IHRlc3Qgc3VpdGU7IHNvbWUgb2YgdGhlbQojIGFyZSBjb21wYXRpYmxlIHdpdGggNS4wMDQsIGJ1dCBJJ2QgcmF0aGVyIG5vdCBoYXZlIHRvIHNvcnQgdGhlbSBvdXQuCgovYWJjLwogICAgYWJjCiAwOiBhYmMKICAgIHhhYmN5CiAwOiBhYmMKICAgIGFiYWJjCiAwOiBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4YmMKTm8gbWF0Y2gKICAgIGF4YwpObyBtYXRjaAogICAgYWJ4Ck5vIG1hdGNoCgovYWIqYy8KICAgIGFiYwogMDogYWJjCgovYWIqYmMvCiAgICBhYmMKIDA6IGFiYwogICAgYWJiYwogMDogYWJiYwogICAgYWJiYmJjCiAwOiBhYmJiYmMKCi8uezF9LwogICAgYWJiYmJjCiAwOiBhCgovLnszLDR9LwogICAgYWJiYmJjCiAwOiBhYmJiCgovYWJ7MCx9YmMvCiAgICBhYmJiYmMKIDA6IGFiYmJiYwoKL2FiK2JjLwogICAgYWJiYwogMDogYWJiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYwpObyBtYXRjaAogICAgYWJxCk5vIG1hdGNoCgovYWJ7MSx9YmMvCgovYWIrYmMvCiAgICBhYmJiYmMKIDA6IGFiYmJiYwoKL2FiezEsfWJjLwogICAgYWJiYmJjCiAwOiBhYmJiYmMKCi9hYnsxLDN9YmMvCiAgICBhYmJiYmMKIDA6IGFiYmJiYwoKL2FiezMsNH1iYy8KICAgIGFiYmJiYwogMDogYWJiYmJjCgovYWJ7NCw1fWJjLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFicQpObyBtYXRjaAogICAgYWJiYmJjCk5vIG1hdGNoCgovYWI/YmMvCiAgICBhYmJjCiAwOiBhYmJjCiAgICBhYmMKIDA6IGFiYwoKL2FiezAsMX1iYy8KICAgIGFiYwogMDogYWJjCgovYWI/YmMvCgovYWI/Yy8KICAgIGFiYwogMDogYWJjCgovYWJ7MCwxfWMvCiAgICBhYmMKIDA6IGFiYwoKL15hYmMkLwogICAgYWJjCiAwOiBhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmJiYmMKTm8gbWF0Y2gKICAgIGFiY2MKTm8gbWF0Y2gKCi9eYWJjLwogICAgYWJjYwogMDogYWJjCgovXmFiYyQvCgovYWJjJC8KICAgIGFhYmMKIDA6IGFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYmNkCk5vIG1hdGNoCgovXi8KICAgIGFiYwogMDogCgovJC8KICAgIGFiYwogMDogCgovYS5jLwogICAgYWJjCiAwOiBhYmMKICAgIGF4YwogMDogYXhjCgovYS4qYy8KICAgIGF4eXpjCiAwOiBheHl6YwoKL2FbYmNdZC8KICAgIGFiZAogMDogYWJkClw9IEV4cGVjdCBubyBtYXRjaAogICAgYXh5emQKTm8gbWF0Y2gKICAgIGFiYwpObyBtYXRjaAoKL2FbYi1kXWUvCiAgICBhY2UKIDA6IGFjZQoKL2FbYi1kXS8KICAgIGFhYwogMDogYWMKCi9hWy1iXS8KICAgIGEtCiAwOiBhLQoKL2FbYi1dLwogICAgYS0KIDA6IGEtCgovYV0vCiAgICBhXQogMDogYV0KCi9hW11dYi8KICAgIGFdYgogMDogYV1iCgovYVteYmNdZC8KICAgIGFlZAogMDogYWVkClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJkCk5vIG1hdGNoCiAgICBhYmQKTm8gbWF0Y2gKCi9hW14tYl1jLwogICAgYWRjCiAwOiBhZGMKCi9hW15dYl1jLwogICAgYWRjCiAwOiBhZGMKICAgIGEtYwogMDogYS1jClw9IEV4cGVjdCBubyBtYXRjaAogICAgYV1jCk5vIG1hdGNoCgovXGJhXGIvCiAgICBhLQogMDogYQogICAgLWEKIDA6IGEKICAgIC1hLQogMDogYQoKL1xieVxiLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5Ck5vIG1hdGNoCiAgICB5egpObyBtYXRjaAogICAgeHl6Ck5vIG1hdGNoCgovXEJhXEIvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYS0KTm8gbWF0Y2gKICAgIC1hCk5vIG1hdGNoCiAgICAtYS0KTm8gbWF0Y2gKCi9cQnlcYi8KICAgIHh5CiAwOiB5CgovXGJ5XEIvCiAgICB5egogMDogeQoKL1xCeVxCLwogICAgeHl6CiAwOiB5CgovXHcvCiAgICBhCiAwOiBhCgovXFcvCiAgICAtCiAwOiAtClw9IEV4cGVjdCBubyBtYXRjaAogICAgYQpObyBtYXRjaAoKL2Fcc2IvCiAgICBhIGIKIDA6IGEgYgoKL2FcU2IvCiAgICBhLWIKIDA6IGEtYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGEgYgpObyBtYXRjaAoKL1xkLwogICAgMQogMDogMQoKL1xELwogICAgLQogMDogLQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDEKTm8gbWF0Y2gKCi9bXHddLwogICAgYQogMDogYQoKL1tcV10vCiAgICAtCiAwOiAtClw9IEV4cGVjdCBubyBtYXRjaAogICAgYQpObyBtYXRjaAoKL2FbXHNdYi8KICAgIGEgYgogMDogYSBiCgovYVtcU11iLwogICAgYS1iCiAwOiBhLWIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhIGIKTm8gbWF0Y2gKCi9bXGRdLwogICAgMQogMDogMQoKL1tcRF0vCiAgICAtCiAwOiAtClw9IEV4cGVjdCBubyBtYXRjaAogICAgMQpObyBtYXRjaAoKL2FifGNkLwogICAgYWJjCiAwOiBhYgogICAgYWJjZAogMDogYWIKCi8oKWVmLwogICAgZGVmCiAwOiBlZgogMTogCgovJGIvCgovYVwoYi8KICAgIGEoYgogMDogYShiCgovYVwoKmIvCiAgICBhYgogMDogYWIKICAgIGEoKGIKIDA6IGEoKGIKCi9hXFxiLwogICAgYVxcYgogMDogYVxiCgovKChhKSkvCiAgICBhYmMKIDA6IGEKIDE6IGEKIDI6IGEKCi8oYSliKGMpLwogICAgYWJjCiAwOiBhYmMKIDE6IGEKIDI6IGMKCi9hK2IrYy8KICAgIGFhYmJhYmMKIDA6IGFiYwoKL2F7MSx9YnsxLH1jLwogICAgYWFiYmFiYwogMDogYWJjCgovYS4rP2MvCiAgICBhYmNhYmMKIDA6IGFiYwoKLyhhK3xiKSovCiAgICBhYgogMDogYWIKIDE6IGIKCi8oYSt8Yil7MCx9LwogICAgYWIKIDA6IGFiCiAxOiBiCgovKGErfGIpKy8KICAgIGFiCiAwOiBhYgogMTogYgoKLyhhK3xiKXsxLH0vCiAgICBhYgogMDogYWIKIDE6IGIKCi8oYSt8Yik/LwogICAgYWIKIDA6IGEKIDE6IGEKCi8oYSt8Yil7MCwxfS8KICAgIGFiCiAwOiBhCiAxOiBhCgovW15hYl0qLwogICAgY2RlCiAwOiBjZGUKCi9hYmMvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYgpObyBtYXRjaAoKL2EqLwogICAgXAogMDogCgovKFthYmNdKSpkLwogICAgYWJiYmNkCiAwOiBhYmJiY2QKIDE6IGMKCi8oW2FiY10pKmJjZC8KICAgIGFiY2QKIDA6IGFiY2QKIDE6IGEKCi9hfGJ8Y3xkfGUvCiAgICBlCiAwOiBlCgovKGF8YnxjfGR8ZSlmLwogICAgZWYKIDA6IGVmCiAxOiBlCgovYWJjZCplZmcvCiAgICBhYmNkZWZnCiAwOiBhYmNkZWZnCgovYWIqLwogICAgeGFieWFiYmJ6CiAwOiBhYgogICAgeGF5YWJiYnoKIDA6IGEKCi8oYWJ8Y2QpZS8KICAgIGFiY2RlCiAwOiBjZGUKIDE6IGNkCgovW2FiaGdlZmRjXWlqLwogICAgaGlqCiAwOiBoaWoKCi9eKGFifGNkKWUvCgovKGFiY3wpZWYvCiAgICBhYmNkZWYKIDA6IGVmCiAxOiAKCi8oYXxiKWMqZC8KICAgIGFiY2QKIDA6IGJjZAogMTogYgoKLyhhYnxhYiopYmMvCiAgICBhYmMKIDA6IGFiYwogMTogYQoKL2EoW2JjXSopYyovCiAgICBhYmMKIDA6IGFiYwogMTogYmMKCi9hKFtiY10qKShjKmQpLwogICAgYWJjZAogMDogYWJjZAogMTogYmMKIDI6IGQKCi9hKFtiY10rKShjKmQpLwogICAgYWJjZAogMDogYWJjZAogMTogYmMKIDI6IGQKCi9hKFtiY10qKShjK2QpLwogICAgYWJjZAogMDogYWJjZAogMTogYgogMjogY2QKCi9hW2JjZF0qZGNkY2RlLwogICAgYWRjZGNkZQogMDogYWRjZGNkZQoKL2FbYmNkXStkY2RjZGUvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjZGUKTm8gbWF0Y2gKICAgIGFkY2RjZGUKTm8gbWF0Y2gKCi8oYWJ8YSliKmMvCiAgICBhYmMKIDA6IGFiYwogMTogYWIKCi8oKGEpKGIpYykoZCkvCiAgICBhYmNkCiAwOiBhYmNkCiAxOiBhYmMKIDI6IGEKIDM6IGIKIDQ6IGQKCi9bYS16QS1aX11bYS16QS1aMC05X10qLwogICAgYWxwaGEKIDA6IGFscGhhCgovXmEoYmMrfGJbZWhdKWd8LmgkLwogICAgYWJoCiAwOiBiaAoKLyhiYytkJHxlZipnLnxoP2koanxrKSkvCiAgICBlZmZnegogMDogZWZmZ3oKIDE6IGVmZmd6CiAgICBpagogMDogaWoKIDE6IGlqCiAyOiBqCiAgICByZWZmZ3oKIDA6IGVmZmd6CiAxOiBlZmZnegpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGVmZmcKTm8gbWF0Y2gKICAgIGJjZGQKTm8gbWF0Y2gKCi8oKCgoKCgoKCgoYSkpKSkpKSkpKSkvCiAgICBhCiAwOiBhCiAxOiBhCiAyOiBhCiAzOiBhCiA0OiBhCiA1OiBhCiA2OiBhCiA3OiBhCiA4OiBhCiA5OiBhCjEwOiBhCgovKCgoKCgoKCgoKGEpKSkpKSkpKSkpXDEwLwogICAgYWEKIDA6IGFhCiAxOiBhCiAyOiBhCiAzOiBhCiA0OiBhCiA1OiBhCiA2OiBhCiA3OiBhCiA4OiBhCiA5OiBhCjEwOiBhCgovKCgoKCgoKCgoYSkpKSkpKSkpKS8KICAgIGEKIDA6IGEKIDE6IGEKIDI6IGEKIDM6IGEKIDQ6IGEKIDU6IGEKIDY6IGEKIDc6IGEKIDg6IGEKIDk6IGEKCi9tdWx0aXBsZSB3b3JkcyBvZiB0ZXh0LwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhCk5vIG1hdGNoCiAgICB1aC11aApObyBtYXRjaAoKL211bHRpcGxlIHdvcmRzLwogICAgbXVsdGlwbGUgd29yZHMsIHllYWgKIDA6IG11bHRpcGxlIHdvcmRzCgovKC4qKWMoLiopLwogICAgYWJjZGUKIDA6IGFiY2RlCiAxOiBhYgogMjogZGUKCi9cKCguKiksICguKilcKS8KICAgIChhLCBiKQogMDogKGEsIGIpCiAxOiBhCiAyOiBiCgovW2tdLwoKL2FiY2QvCiAgICBhYmNkCiAwOiBhYmNkCgovYShiYylkLwogICAgYWJjZAogMDogYWJjZAogMTogYmMKCi9hWy1dP2MvCiAgICBhYwogMDogYWMKCi8oYWJjKVwxLwogICAgYWJjYWJjCiAwOiBhYmNhYmMKIDE6IGFiYwoKLyhbYS1jXSopXDEvCiAgICBhYmNhYmMKIDA6IGFiY2FiYwogMTogYWJjCgovKGEpfFwxLwogICAgYQogMDogYQogMTogYQogICAgYWIKIDA6IGEKIDE6IGEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4Ck5vIG1hdGNoCgovKChbYS1jXSliKj9cMikqLwogICAgYWJhYmJiY2JjCiAwOiBhYmFiYgogMTogYmIKIDI6IGIKCi8oKFthLWNdKWIqP1wyKXszfS8KICAgIGFiYWJiYmNiYwogMDogYWJhYmJiY2JjCiAxOiBjYmMKIDI6IGMKCi8oKFwzfGIpXDIoYSl4KSsvCiAgICBhYWF4YWJheGJhYXhiYmF4CiAwOiBiYmF4CiAxOiBiYmF4CiAyOiBiCiAzOiBhCgovKChcM3xiKVwyKGEpKXsyLH0vCiAgICBiYmFhYmFiYmFiYWFhYWFiYmFhYWFiYmEKIDA6IGJiYWFhYWJiYQogMTogYmJhCiAyOiBiCiAzOiBhCgovYWJjL2kKICAgIEFCQwogMDogQUJDCiAgICBYQUJDWQogMDogQUJDCiAgICBBQkFCQwogMDogQUJDClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWF4YWJ4YmF4YmJ4Ck5vIG1hdGNoCiAgICBYQkMKTm8gbWF0Y2gKICAgIEFYQwpObyBtYXRjaAogICAgQUJYCk5vIG1hdGNoCgovYWIqYy9pCiAgICBBQkMKIDA6IEFCQwoKL2FiKmJjL2kKICAgIEFCQwogMDogQUJDCiAgICBBQkJDCiAwOiBBQkJDCgovYWIqP2JjL2kKICAgIEFCQkJCQwogMDogQUJCQkJDCgovYWJ7MCx9P2JjL2kKICAgIEFCQkJCQwogMDogQUJCQkJDCgovYWIrP2JjL2kKICAgIEFCQkMKIDA6IEFCQkMKCi9hYitiYy9pClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUJDCk5vIG1hdGNoCiAgICBBQlEKTm8gbWF0Y2gKCi9hYnsxLH1iYy9pCgovYWIrYmMvaQogICAgQUJCQkJDCiAwOiBBQkJCQkMKCi9hYnsxLH0/YmMvaQogICAgQUJCQkJDCiAwOiBBQkJCQkMKCi9hYnsxLDN9P2JjL2kKICAgIEFCQkJCQwogMDogQUJCQkJDCgovYWJ7Myw0fT9iYy9pCiAgICBBQkJCQkMKIDA6IEFCQkJCQwoKL2FiezQsNX0/YmMvaQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFCUQpObyBtYXRjaAogICAgQUJCQkJDCk5vIG1hdGNoCgovYWI/P2JjL2kKICAgIEFCQkMKIDA6IEFCQkMKICAgIEFCQwogMDogQUJDCgovYWJ7MCwxfT9iYy9pCiAgICBBQkMKIDA6IEFCQwoKL2FiPz9iYy9pCgovYWI/P2MvaQogICAgQUJDCiAwOiBBQkMKCi9hYnswLDF9P2MvaQogICAgQUJDCiAwOiBBQkMKCi9eYWJjJC9pCiAgICBBQkMKIDA6IEFCQwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFCQkJCQwpObyBtYXRjaAogICAgQUJDQwpObyBtYXRjaAoKL15hYmMvaQogICAgQUJDQwogMDogQUJDCgovXmFiYyQvaQoKL2FiYyQvaQogICAgQUFCQwogMDogQUJDCgovXi9pCiAgICBBQkMKIDA6IAoKLyQvaQogICAgQUJDCiAwOiAKCi9hLmMvaQogICAgQUJDCiAwOiBBQkMKICAgIEFYQwogMDogQVhDCgovYS4qP2MvaQogICAgQVhZWkMKIDA6IEFYWVpDCgovYS4qYy9pCiAgICBBQUJDCiAwOiBBQUJDClw9IEV4cGVjdCBubyBtYXRjaAogICAgQVhZWkQKTm8gbWF0Y2gKCi9hW2JjXWQvaQogICAgQUJECiAwOiBBQkQKCi9hW2ItZF1lL2kKICAgIEFDRQogMDogQUNFClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUJDCk5vIG1hdGNoCiAgICBBQkQKTm8gbWF0Y2gKCi9hW2ItZF0vaQogICAgQUFDCiAwOiBBQwoKL2FbLWJdL2kKICAgIEEtCiAwOiBBLQoKL2FbYi1dL2kKICAgIEEtCiAwOiBBLQoKL2FdL2kKICAgIEFdCiAwOiBBXQoKL2FbXV1iL2kKICAgIEFdQgogMDogQV1CCgovYVteYmNdZC9pCiAgICBBRUQKIDA6IEFFRAoKL2FbXi1iXWMvaQogICAgQURDCiAwOiBBREMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBQkQKTm8gbWF0Y2gKICAgIEEtQwpObyBtYXRjaAoKL2FbXl1iXWMvaQogICAgQURDCiAwOiBBREMKCi9hYnxjZC9pCiAgICBBQkMKIDA6IEFCCiAgICBBQkNECiAwOiBBQgoKLygpZWYvaQogICAgREVGCiAwOiBFRgogMTogCgovJGIvaQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFdQwpObyBtYXRjaAogICAgQgpObyBtYXRjaAoKL2FcKGIvaQogICAgQShCCiAwOiBBKEIKCi9hXCgqYi9pCiAgICBBQgogMDogQUIKICAgIEEoKEIKIDA6IEEoKEIKCi9hXFxiL2kKICAgIEFcXGIKIDA6IEFcYgogICAgYVxcQiAKIDA6IGFcQgoKLygoYSkpL2kKICAgIEFCQwogMDogQQogMTogQQogMjogQQoKLyhhKWIoYykvaQogICAgQUJDCiAwOiBBQkMKIDE6IEEKIDI6IEMKCi9hK2IrYy9pCiAgICBBQUJCQUJDCiAwOiBBQkMKCi9hezEsfWJ7MSx9Yy9pCiAgICBBQUJCQUJDCiAwOiBBQkMKCi9hLis/Yy9pCiAgICBBQkNBQkMKIDA6IEFCQwoKL2EuKj9jL2kKICAgIEFCQ0FCQwogMDogQUJDCgovYS57MCw1fT9jL2kKICAgIEFCQ0FCQwogMDogQUJDCgovKGErfGIpKi9pCiAgICBBQgogMDogQUIKIDE6IEIKCi8oYSt8Yil7MCx9L2kKICAgIEFCCiAwOiBBQgogMTogQgoKLyhhK3xiKSsvaQogICAgQUIKIDA6IEFCCiAxOiBCCgovKGErfGIpezEsfS9pCiAgICBBQgogMDogQUIKIDE6IEIKCi8oYSt8Yik/L2kKICAgIEFCCiAwOiBBCiAxOiBBCgovKGErfGIpezAsMX0vaQogICAgQUIKIDA6IEEKIDE6IEEKCi8oYSt8Yil7MCwxfT8vaQogICAgQUIKIDA6IAoKL1teYWJdKi9pCiAgICBDREUKIDA6IENERQoKLyhbYWJjXSkqZC9pCiAgICBBQkJCQ0QKIDA6IEFCQkJDRAogMTogQwoKLyhbYWJjXSkqYmNkL2kKICAgIEFCQ0QKIDA6IEFCQ0QKIDE6IEEKCi9hfGJ8Y3xkfGUvaQogICAgRQogMDogRQoKLyhhfGJ8Y3xkfGUpZi9pCiAgICBFRgogMDogRUYKIDE6IEUKCi9hYmNkKmVmZy9pCiAgICBBQkNERUZHCiAwOiBBQkNERUZHCgovYWIqL2kKICAgIFhBQllBQkJCWgogMDogQUIKICAgIFhBWUFCQkJaCiAwOiBBCgovKGFifGNkKWUvaQogICAgQUJDREUKIDA6IENERQogMTogQ0QKCi9bYWJoZ2VmZGNdaWovaQogICAgSElKCiAwOiBISUoKCi9eKGFifGNkKWUvaQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFCQ0RFCk5vIG1hdGNoCgovKGFiY3wpZWYvaQogICAgQUJDREVGCiAwOiBFRgogMTogCgovKGF8YiljKmQvaQogICAgQUJDRAogMDogQkNECiAxOiBCCgovKGFifGFiKiliYy9pCiAgICBBQkMKIDA6IEFCQwogMTogQQoKL2EoW2JjXSopYyovaQogICAgQUJDCiAwOiBBQkMKIDE6IEJDCgovYShbYmNdKikoYypkKS9pCiAgICBBQkNECiAwOiBBQkNECiAxOiBCQwogMjogRAoKL2EoW2JjXSspKGMqZCkvaQogICAgQUJDRAogMDogQUJDRAogMTogQkMKIDI6IEQKCi9hKFtiY10qKShjK2QpL2kKICAgIEFCQ0QKIDA6IEFCQ0QKIDE6IEIKIDI6IENECgovYVtiY2RdKmRjZGNkZS9pCiAgICBBRENEQ0RFCiAwOiBBRENEQ0RFCgovYVtiY2RdK2RjZGNkZS9pCgovKGFifGEpYipjL2kKICAgIEFCQwogMDogQUJDCiAxOiBBQgoKLygoYSkoYiljKShkKS9pCiAgICBBQkNECiAwOiBBQkNECiAxOiBBQkMKIDI6IEEKIDM6IEIKIDQ6IEQKCi9bYS16QS1aX11bYS16QS1aMC05X10qL2kKICAgIEFMUEhBCiAwOiBBTFBIQQoKL15hKGJjK3xiW2VoXSlnfC5oJC9pCiAgICBBQkgKIDA6IEJICgovKGJjK2QkfGVmKmcufGg/aShqfGspKS9pCiAgICBFRkZHWgogMDogRUZGR1oKIDE6IEVGRkdaCiAgICBJSgogMDogSUoKIDE6IElKCiAyOiBKCiAgICBSRUZGR1oKIDA6IEVGRkdaCiAxOiBFRkZHWgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFEQ0RDREUKTm8gbWF0Y2gKICAgIEVGRkcKTm8gbWF0Y2gKICAgIEJDREQKTm8gbWF0Y2gKCi8oKCgoKCgoKCgoYSkpKSkpKSkpKSkvaQogICAgQQogMDogQQogMTogQQogMjogQQogMzogQQogNDogQQogNTogQQogNjogQQogNzogQQogODogQQogOTogQQoxMDogQQoKLygoKCgoKCgoKChhKSkpKSkpKSkpKVwxMC9pCiAgICBBQQogMDogQUEKIDE6IEEKIDI6IEEKIDM6IEEKIDQ6IEEKIDU6IEEKIDY6IEEKIDc6IEEKIDg6IEEKIDk6IEEKMTA6IEEKCi8oKCgoKCgoKChhKSkpKSkpKSkpL2kKICAgIEEKIDA6IEEKIDE6IEEKIDI6IEEKIDM6IEEKIDQ6IEEKIDU6IEEKIDY6IEEKIDc6IEEKIDg6IEEKIDk6IEEKCi8oPzooPzooPzooPzooPzooPzooPzooPzooPzooYSkpKSkpKSkpKSkvaQogICAgQQogMDogQQogMTogQQoKLyg/Oig/Oig/Oig/Oig/Oig/Oig/Oig/Oig/OihhfGJ8YykpKSkpKSkpKSkvaQogICAgQwogMDogQwogMTogQwoKL211bHRpcGxlIHdvcmRzIG9mIHRleHQvaQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFBCk5vIG1hdGNoCiAgICBVSC1VSApObyBtYXRjaAoKL211bHRpcGxlIHdvcmRzL2kKICAgIE1VTFRJUExFIFdPUkRTLCBZRUFICiAwOiBNVUxUSVBMRSBXT1JEUwoKLyguKiljKC4qKS9pCiAgICBBQkNERQogMDogQUJDREUKIDE6IEFCCiAyOiBERQoKL1woKC4qKSwgKC4qKVwpL2kKICAgIChBLCBCKQogMDogKEEsIEIpCiAxOiBBCiAyOiBCCgovW2tdL2kKCi9hYmNkL2kKICAgIEFCQ0QKIDA6IEFCQ0QKCi9hKGJjKWQvaQogICAgQUJDRAogMDogQUJDRAogMTogQkMKCi9hWy1dP2MvaQogICAgQUMKIDA6IEFDCgovKGFiYylcMS9pCiAgICBBQkNBQkMKIDA6IEFCQ0FCQwogMTogQUJDCgovKFthLWNdKilcMS9pCiAgICBBQkNBQkMKIDA6IEFCQ0FCQwogMTogQUJDCgovYSg/IWIpLi8KICAgIGFiYWQKIDA6IGFkCgovYSg/PWQpLi8KICAgIGFiYWQKIDA6IGFkCgovYSg/PWN8ZCkuLwogICAgYWJhZAogMDogYWQKCi9hKD86YnxjfGQpKC4pLwogICAgYWNlCiAwOiBhY2UKIDE6IGUKCi9hKD86YnxjfGQpKiguKS8KICAgIGFjZQogMDogYWNlCiAxOiBlCgovYSg/OmJ8Y3xkKSs/KC4pLwogICAgYWNlCiAwOiBhY2UKIDE6IGUKICAgIGFjZGJjZGJlCiAwOiBhY2QKIDE6IGQKCi9hKD86YnxjfGQpKyguKS8KICAgIGFjZGJjZGJlCiAwOiBhY2RiY2RiZQogMTogZQoKL2EoPzpifGN8ZCl7Mn0oLikvCiAgICBhY2RiY2RiZQogMDogYWNkYgogMTogYgoKL2EoPzpifGN8ZCl7NCw1fSguKS8KICAgIGFjZGJjZGJlCiAwOiBhY2RiY2RiCiAxOiBiCgovYSg/OmJ8Y3xkKXs0LDV9PyguKS8KICAgIGFjZGJjZGJlCiAwOiBhY2RiY2QKIDE6IGQKCi8oKGZvbyl8KGJhcikpKi8KICAgIGZvb2JhcgogMDogZm9vYmFyCiAxOiBiYXIKIDI6IGZvbwogMzogYmFyCgovYSg/OmJ8Y3xkKXs2LDd9KC4pLwogICAgYWNkYmNkYmUKIDA6IGFjZGJjZGJlCiAxOiBlCgovYSg/OmJ8Y3xkKXs2LDd9PyguKS8KICAgIGFjZGJjZGJlCiAwOiBhY2RiY2RiZQogMTogZQoKL2EoPzpifGN8ZCl7NSw2fSguKS8KICAgIGFjZGJjZGJlCiAwOiBhY2RiY2RiZQogMTogZQoKL2EoPzpifGN8ZCl7NSw2fT8oLikvCiAgICBhY2RiY2RiZQogMDogYWNkYmNkYgogMTogYgoKL2EoPzpifGN8ZCl7NSw3fSguKS8KICAgIGFjZGJjZGJlCiAwOiBhY2RiY2RiZQogMTogZQoKL2EoPzpifGN8ZCl7NSw3fT8oLikvCiAgICBhY2RiY2RiZQogMDogYWNkYmNkYgogMTogYgoKL2EoPzpifChjfGUpezEsMn0/fGQpKz8oLikvCiAgICBhY2UKIDA6IGFjZQogMTogYwogMjogZQoKL14oLispP0IvCiAgICBBQgogMDogQUIKIDE6IEEKCi9eKFteYS16XSl8KFxeKSQvCiAgICAuCiAwOiAuCiAxOiAuCgovXls8Pl0mLwogICAgPCZPVVQKIDA6IDwmCgovXihhXDE/KXs0fSQvCiAgICBhYWFhYWFhYWFhCiAwOiBhYWFhYWFhYWFhCiAxOiBhYWFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUIKTm8gbWF0Y2gKICAgIGFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWEKTm8gbWF0Y2gKCi9eKGEoPygxKVwxKSl7NH0kLwogICAgYWFhYWFhYWFhYQogMDogYWFhYWFhYWFhYQogMTogYWFhYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWFhYWFhYQpObyBtYXRjaAogICAgYWFhYWFhYWFhYWEKTm8gbWF0Y2gKCi8oPzooZikobykobyl8KGIpKGEpKHIpKSovCiAgICBmb29iYXIKIDA6IGZvb2JhcgogMTogZgogMjogbwogMzogbwogNDogYgogNTogYQogNjogcgoKLyg/PD1hKWIvCiAgICBhYgogMDogYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGNiCk5vIG1hdGNoCiAgICBiCk5vIG1hdGNoCgovKD88IWMpYi8KICAgIGFiCiAwOiBiCiAgICBiCiAwOiBiCiAgICBiCiAwOiBiCgovKD86Li4pKmEvCiAgICBhYmEKIDA6IGFiYQoKLyg/Oi4uKSo/YS8KICAgIGFiYQogMDogYQoKL14oPzpifGEoPz0oLikpKSpcMS8KICAgIGFiYwogMDogYWIKIDE6IGIKCi9eKCl7Myw1fS8KICAgIGFiYwogMDogCiAxOiAKCi9eKGErKSpheC8KICAgIGFheAogMDogYWF4CiAxOiBhCgovXigoYXxiKSspKmF4LwogICAgYWF4CiAwOiBhYXgKIDE6IGEKIDI6IGEKCi9eKChhfGJjKSspKmF4LwogICAgYWF4CiAwOiBhYXgKIDE6IGEKIDI6IGEKCi8oYXx4KSphYi8KICAgIGNhYgogMDogYWIKCi8oYSkqYWIvCiAgICBjYWIKIDA6IGFiCgovKD86KD9pKWEpYi8KICAgIGFiCiAwOiBhYgoKLygoP2kpYSliLwogICAgYWIKIDA6IGFiCiAxOiBhCgovKD86KD9pKWEpYi8KICAgIEFiCiAwOiBBYgoKLygoP2kpYSliLwogICAgQWIKIDA6IEFiCiAxOiBBCgovKD86KD9pKWEpYi8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBjYgpObyBtYXRjaAogICAgYUIKTm8gbWF0Y2gKCi8oKD9pKWEpYi8KCi8oP2k6YSliLwogICAgYWIKIDA6IGFiCgovKCg/aTphKSliLwogICAgYWIKIDA6IGFiCiAxOiBhCgovKD9pOmEpYi8KICAgIEFiCiAwOiBBYgoKLygoP2k6YSkpYi8KICAgIEFiCiAwOiBBYgogMTogQQoKLyg/aTphKWIvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYUIKTm8gbWF0Y2gKICAgIGFCCk5vIG1hdGNoCgovKCg/aTphKSliLwoKLyg/Oig/LWkpYSliL2kKICAgIGFiCiAwOiBhYgoKLygoPy1pKWEpYi9pCiAgICBhYgogMDogYWIKIDE6IGEKCi8oPzooPy1pKWEpYi9pCiAgICBhQgogMDogYUIKCi8oKD8taSlhKWIvaQogICAgYUIKIDA6IGFCCiAxOiBhCgovKD86KD8taSlhKWIvaQogICAgYUIKIDA6IGFCClw9IEV4cGVjdCBubyBtYXRjaAogICAgQWIKTm8gbWF0Y2gKICAgIEFCCk5vIG1hdGNoCgovKD8taTphKWIvaQogICAgYWIKIDA6IGFiCgovKCg/LWk6YSkpYi9pCiAgICBhYgogMDogYWIKIDE6IGEKCi8oPy1pOmEpYi9pCiAgICBhQgogMDogYUIKCi8oKD8taTphKSliL2kKICAgIGFCCiAwOiBhQgogMTogYQoKLyg/LWk6YSliL2kKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBQgpObyBtYXRjaAogICAgQWIKTm8gbWF0Y2gKCi8oKD8taTphKSliL2kKCi8oPy1pOmEpYi9pCiAgICBhQgogMDogYUIKCi8oKD8taTphKSliL2kKICAgIGFCCiAwOiBhQgogMTogYQoKLyg/LWk6YSliL2kKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBYgpObyBtYXRjaAogICAgQUIKTm8gbWF0Y2gKCi8oKD8taTphKSliL2kKCi8oKD8taTphLikpYi9pClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUIKTm8gbWF0Y2gKICAgIGFcbkIKTm8gbWF0Y2gKCi8oKD9zLWk6YS4pKWIvaQogICAgYVxuQgogMDogYVx4MGFCCiAxOiBhXHgwYQoKLyg/OmN8ZCkoPzopKD86YSg/OikoPzpiKSg/OmIoPzopKSg/OmIoPzopKD86YikpKS8KICAgIGNhYmJiYgogMDogY2FiYmJiCgovKD86Y3xkKSg/OikoPzphYWFhYWFhYSg/OikoPzpiYmJiYmJiYikoPzpiYmJiYmJiYig/OikpKD86YmJiYmJiYmIoPzopKD86YmJiYmJiYmIpKSkvCiAgICBjYWFhYWFhYWFiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYgogMDogY2FhYWFhYWFhYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmIKCi8oYWIpXGRcMS9pCiAgICBBYjRhYgogMDogQWI0YWIKIDE6IEFiCiAgICBhYjRBYgogMDogYWI0QWIKIDE6IGFiCgovZm9vXHcqXGR7NH1iYXovCiAgICBmb29iYXIxMjM0YmF6CiAwOiBmb29iYXIxMjM0YmF6CgoveCh+fikqKD86KD86Rik/KT8vCiAgICB4fn4KIDA6IHh+fgogMTogfn4KCi9eYSg/I3h4eCl7M31jLwogICAgYWFhYwogMDogYWFhYwoKL15hICg/I3h4eCkgKD8jeXl5KSB7M31jL3gKICAgIGFhYWMKIDA6IGFhYWMKCi8oPzwhW2NkXSliLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEJcbkIKTm8gbWF0Y2gKICAgIGRiY2IKTm8gbWF0Y2gKCi8oPzwhW2NkXSlbYWJdLwogICAgZGJhYWNiCiAwOiBhCgovKD88IShjfGQpKWIvCgovKD88IShjfGQpKVthYl0vCiAgICBkYmFhY2IKIDA6IGEKCi8oPzwhY2QpW2FiXS8KICAgIGNkYWNjYgogMDogYgoKL14oPzphP2I/KSokLwogICAgXAogMDogCiAgICBhCiAwOiBhCiAgICBhYgogMDogYWIKICAgIGFhYSAgIAogMDogYWFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgZGJjYgpObyBtYXRjaAogICAgYS0tCk5vIG1hdGNoCiAgICBhYS0tIApObyBtYXRjaAoKLygoP3MpXmEoLikpKCg/bSleYiQpLwogICAgYVxuYlxuY1xuCiAwOiBhXHgwYWIKIDE6IGFceDBhCiAyOiBceDBhCiAzOiBiCgovKCg/bSleYiQpLwogICAgYVxuYlxuY1xuCiAwOiBiCiAxOiBiCgovKD9tKV5iLwogICAgYVxuYlxuCiAwOiBiCgovKD9tKV4oYikvCiAgICBhXG5iXG4KIDA6IGIKIDE6IGIKCi8oKD9tKV5iKS8KICAgIGFcbmJcbgogMDogYgogMTogYgoKL1xuKCg/bSleYikvCiAgICBhXG5iXG4KIDA6IFx4MGFiCiAxOiBiCgovKCg/cykuKWMoPyEuKS8KICAgIGFcbmJcbmNcbgogMDogXHgwYWMKIDE6IFx4MGEKICAgIGFcbmJcbmNcbgogMDogXHgwYWMKIDE6IFx4MGEKCi8oKD9zKWIuKWMoPyEuKS8KICAgIGFcbmJcbmNcbgogMDogYlx4MGFjCiAxOiBiXHgwYQogICAgYVxuYlxuY1xuCiAwOiBiXHgwYWMKIDE6IGJceDBhCgovXmIvCgovKCleYi8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhXG5iXG5jXG4KTm8gbWF0Y2gKICAgIGFcbmJcbmNcbgpObyBtYXRjaAoKLygoP20pXmIpLwogICAgYVxuYlxuY1xuCiAwOiBiCiAxOiBiCgovKHgpPyg/KDEpYXxiKS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCgovKHgpPyg/KDEpYnxhKS8KICAgIGEKIDA6IGEKCi8oKT8oPygxKWJ8YSkvCiAgICBhCiAwOiBhCgovKCkoPygxKWJ8YSkvCgovKCk/KD8oMSlhfGIpLwogICAgYQogMDogYQogMTogCgovXihcKCk/YmxhaCg/KDEpKFwpKSkkLwogICAgKGJsYWgpCiAwOiAoYmxhaCkKIDE6ICgKIDI6ICkKICAgIGJsYWgKIDA6IGJsYWgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCiAgICBibGFoKQpObyBtYXRjaAogICAgKGJsYWgKTm8gbWF0Y2gKCi9eKFwoKyk/YmxhaCg/KDEpKFwpKSkkLwogICAgKGJsYWgpCiAwOiAoYmxhaCkKIDE6ICgKIDI6ICkKICAgIGJsYWgKIDA6IGJsYWgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBibGFoKQpObyBtYXRjaAogICAgKGJsYWgKTm8gbWF0Y2gKCi8oPyg/IWEpYXxiKS8KCi8oPyg/IWEpYnxhKS8KICAgIGEKIDA6IGEKCi8oPyg/PWEpYnxhKS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCgovKD8oPz1hKWF8YikvCiAgICBhCiAwOiBhCgovKD89KGErPykpKFwxYWIpLwogICAgYWFhYgogMDogYWFiCiAxOiBhCiAyOiBhYWIKCi9eKD89KGErPykpXDFhYi8KCi8oXHcrOikrLwogICAgb25lOgogMDogb25lOgogMTogb25lOgoKLyQoPzw9XihhKSkvCiAgICBhCiAwOiAKIDE6IGEKCi8oPz0oYSs/KSkoXDFhYikvCiAgICBhYWFiCiAwOiBhYWIKIDE6IGEKIDI6IGFhYgoKL14oPz0oYSs/KSlcMWFiLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWIKTm8gbWF0Y2gKICAgIGFhYWIKTm8gbWF0Y2gKCi8oW1x3Ol0rOjopPyhcdyspJC8KICAgIGFiY2QKIDA6IGFiY2QKIDE6IDx1bnNldD4KIDI6IGFiY2QKICAgIHh5Ono6OjphYmNkCiAwOiB4eTp6Ojo6YWJjZAogMTogeHk6ejo6OgogMjogYWJjZAoKL15bXmJjZF0qKGMrKS8KICAgIGFleHljZAogMDogYWV4eWMKIDE6IGMKCi8oYSopYisvCiAgICBjYWFiCiAwOiBhYWIKIDE6IGFhCgovKFtcdzpdKzo6KT8oXHcrKSQvCiAgICBhYmNkCiAwOiBhYmNkCiAxOiA8dW5zZXQ+CiAyOiBhYmNkCiAgICB4eTp6Ojo6YWJjZAogMDogeHk6ejo6OmFiY2QKIDE6IHh5Ono6OjoKIDI6IGFiY2QKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkOgpObyBtYXRjaAogICAgYWJjZDoKTm8gbWF0Y2gKCi9eW15iY2RdKihjKykvCiAgICBhZXh5Y2QKIDA6IGFleHljCiAxOiBjCgovKD5hKylhYi8KCi8oPz5hKyliLwogICAgYWFhYgogMDogYWFhYgoKLyhbWzpdKykvCiAgICBhOltiXToKIDA6IDpbCiAxOiA6WwoKLyhbWz1dKykvCiAgICBhPVtiXT0KIDA6ID1bCiAxOiA9WwoKLyhbWy5dKykvCiAgICBhLltiXS4KIDA6IC5bCiAxOiAuWwoKLygoPz5hKyliKS8KICAgIGFhYWIKIDA6IGFhYWIKIDE6IGFhYWIKCi8oPz4oYSspKWIvCiAgICBhYWFiCiAwOiBhYWFiCiAxOiBhYWEKCi8oKD8+W14oKV0rKXxcKFteKCldKlwpKSsvCiAgICAoKGFiYyhhZGUpdWZoKCkoKXgKIDA6IGFiYyhhZGUpdWZoKCkoKXgKIDE6IHgKCi9hXFovClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYgpObyBtYXRjaAogICAgYVxuYlxuCk5vIG1hdGNoCgovYlxaLwogICAgYVxuYlxuCiAwOiBiCgovYlx6LwoKL2JcWi8KICAgIGFcbmIKIDA6IGIKCi9iXHovCiAgICBhXG5iCiAwOiBiCiAgICAKL14oPz4oPygxKVwufCgpKVteXFdfXSg/PlthLXowLTktXSpbXlxXX10pPykrJC8KICAgIGEKIDA6IGEKIDE6IAogICAgYWJjCiAwOiBhYmMKIDE6IAogICAgYS1iCiAwOiBhLWIKIDE6IAogICAgMC05IAogMDogMC05CiAxOiAKICAgIGEuYgogMDogYS5iCiAxOiAKICAgIDUuNi43ICAKIDA6IDUuNi43CiAxOiAKICAgIHRoZS5xdWljay5icm93bi5mb3gKIDA6IHRoZS5xdWljay5icm93bi5mb3gKIDE6IAogICAgYTEwMC5iMjAwLjMwMGMgIAogMDogYTEwMC5iMjAwLjMwMGMKIDE6IAogICAgMTItYWIuMTI0NSAKIDA6IDEyLWFiLjEyNDUKIDE6IApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFwKTm8gbWF0Y2gKICAgIC5hCk5vIG1hdGNoCiAgICAtYQpObyBtYXRjaAogICAgYS0KTm8gbWF0Y2gKICAgIGEuICAKTm8gbWF0Y2gKICAgIGFfYiAKTm8gbWF0Y2gKICAgIGEuLQpObyBtYXRjaAogICAgYS4uICAKTm8gbWF0Y2gKICAgIGFiLi5iYyAKTm8gbWF0Y2gKICAgIHRoZS5xdWljay5icm93bi5mb3gtCk5vIG1hdGNoCiAgICB0aGUucXVpY2suYnJvd24uZm94LgpObyBtYXRjaAogICAgdGhlLnF1aWNrLmJyb3duLmZveF8KTm8gbWF0Y2gKICAgIHRoZS5xdWljay5icm93bi5mb3grICAgICAgIApObyBtYXRjaAoKLyg/Pi4qKSg/PD0oYWJjZHx3eHl6KSkvCiAgICBhbHBoYWJldGFiY2QKIDA6IGFscGhhYmV0YWJjZAogMTogYWJjZAogICAgZW5kaW5nd3h5egogMDogZW5kaW5nd3h5egogMTogd3h5egpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGEgcmF0aGVyIGxvbmcgc3RyaW5nIHRoYXQgZG9lc24ndCBlbmQgd2l0aCBvbmUgb2YgdGhlbQpObyBtYXRjaAoKL3dvcmQgKD8+KD86KD8hb3RoZXJ3b3JkKVthLXpBLVowLTldKyApezAsMzB9KW90aGVyd29yZC8KICAgIHdvcmQgY2F0IGRvZyBlbGVwaGFudCBtdXNzZWwgY293IGhvcnNlIGNhbmFyeSBiYWJvb24gc25ha2Ugc2hhcmsgb3RoZXJ3b3JkCiAwOiB3b3JkIGNhdCBkb2cgZWxlcGhhbnQgbXVzc2VsIGNvdyBob3JzZSBjYW5hcnkgYmFib29uIHNuYWtlIHNoYXJrIG90aGVyd29yZApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHdvcmQgY2F0IGRvZyBlbGVwaGFudCBtdXNzZWwgY293IGhvcnNlIGNhbmFyeSBiYWJvb24gc25ha2Ugc2hhcmsKTm8gbWF0Y2gKICAKL3dvcmQgKD8+W2EtekEtWjAtOV0rICl7MCwzMH1vdGhlcndvcmQvClw9IEV4cGVjdCBubyBtYXRjaAogICAgd29yZCBjYXQgZG9nIGVsZXBoYW50IG11c3NlbCBjb3cgaG9yc2UgY2FuYXJ5IGJhYm9vbiBzbmFrZSBzaGFyayB0aGUgcXVpY2sgYnJvd24gZm94IGFuZCB0aGUgbGF6eSBkb2cgYW5kIHNldmVyYWwgb3RoZXIgd29yZHMgZ2V0dGluZyBjbG9zZSB0byB0aGlydHkgYnkgbm93IEkgaG9wZQpObyBtYXRjaAoKLyg/PD1cZHszfSg/ITk5OSkpZm9vLwogICAgOTk5Zm9vCiAwOiBmb28KICAgIDEyMzk5OWZvbyAKIDA6IGZvbwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDEyM2FiY2ZvbwpObyBtYXRjaAogICAgCi8oPzw9KD8hLi4uOTk5KVxkezN9KWZvby8KICAgIDk5OWZvbwogMDogZm9vCiAgICAxMjM5OTlmb28gCiAwOiBmb28KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjNhYmNmb28KTm8gbWF0Y2gKCi8oPzw9XGR7M30oPyE5OTkpLi4uKWZvby8KICAgIDEyM2FiY2ZvbwogMDogZm9vCiAgICAxMjM0NTZmb28gCiAwOiBmb28KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM5OTlmb28gIApObyBtYXRjaAogICAgCi8oPzw9XGR7M30uLi4pKD88ITk5OSlmb28vCiAgICAxMjNhYmNmb28gICAKIDA6IGZvbwogICAgMTIzNDU2Zm9vIAogMDogZm9vClw9IEV4cGVjdCBubyBtYXRjaAogICAgMTIzOTk5Zm9vICAKTm8gbWF0Y2gKCi88YVtcc10raHJlZltcc10qPVtcc10qICAgICAgICAgICMgZmluZCA8YSBocmVmPQogKFtcIlwnXSk/ICAgICAgICAgICAgICAgICAgICAgICAjIGZpbmQgc2luZ2xlIG9yIGRvdWJsZSBxdW90ZQogKD8oMSkgKC4qPylcMSB8IChbXlxzXSspKSAgICAgICAjIGlmIHF1b3RlIGZvdW5kLCBtYXRjaCB1cCB0byBuZXh0IG1hdGNoaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgcXVvdGUsIG90aGVyd2lzZSBtYXRjaCB1cCB0byBuZXh0IHNwYWNlCi9pc3gKICAgIDxhIGhyZWY9YWJjZCB4eXoKIDA6IDxhIGhyZWY9YWJjZAogMTogPHVuc2V0PgogMjogPHVuc2V0PgogMzogYWJjZAogICAgPGEgaHJlZj1cImFiY2QgeHl6IHBxclwiIGNhdHMKIDA6IDxhIGhyZWY9ImFiY2QgeHl6IHBxciIKIDE6ICIKIDI6IGFiY2QgeHl6IHBxcgogICAgPGEgaHJlZj1cJ2FiY2QgeHl6IHBxclwnIGNhdHMKIDA6IDxhIGhyZWY9J2FiY2QgeHl6IHBxcicKIDE6ICcKIDI6IGFiY2QgeHl6IHBxcgoKLzxhXHMraHJlZlxzKj1ccyogICAgICAgICAgICAgICAgIyBmaW5kIDxhIGhyZWY9CiAoWyInXSk/ICAgICAgICAgICAgICAgICAgICAgICAgICMgZmluZCBzaW5nbGUgb3IgZG91YmxlIHF1b3RlCiAoPygxKSAoLio/KVwxIHwgKFxTKykpICAgICAgICAgICMgaWYgcXVvdGUgZm91bmQsIG1hdGNoIHVwIHRvIG5leHQgbWF0Y2hpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBxdW90ZSwgb3RoZXJ3aXNlIG1hdGNoIHVwIHRvIG5leHQgc3BhY2UKL2lzeAogICAgPGEgaHJlZj1hYmNkIHh5egogMDogPGEgaHJlZj1hYmNkCiAxOiA8dW5zZXQ+CiAyOiA8dW5zZXQ+CiAzOiBhYmNkCiAgICA8YSBocmVmPVwiYWJjZCB4eXogcHFyXCIgY2F0cwogMDogPGEgaHJlZj0iYWJjZCB4eXogcHFyIgogMTogIgogMjogYWJjZCB4eXogcHFyCiAgICA8YSBocmVmICAgICAgID0gICAgICAgXCdhYmNkIHh5eiBwcXJcJyBjYXRzCiAwOiA8YSBocmVmICAgICAgID0gICAgICAgJ2FiY2QgeHl6IHBxcicKIDE6ICcKIDI6IGFiY2QgeHl6IHBxcgoKLzxhXHMraHJlZig/PlxzKik9KD8+XHMqKSAgICAgICAgIyBmaW5kIDxhIGhyZWY9CiAoWyInXSk/ICAgICAgICAgICAgICAgICAgICAgICAgICMgZmluZCBzaW5nbGUgb3IgZG91YmxlIHF1b3RlCiAoPygxKSAoLio/KVwxIHwgKFxTKykpICAgICAgICAgICMgaWYgcXVvdGUgZm91bmQsIG1hdGNoIHVwIHRvIG5leHQgbWF0Y2hpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBxdW90ZSwgb3RoZXJ3aXNlIG1hdGNoIHVwIHRvIG5leHQgc3BhY2UKL2lzeAogICAgPGEgaHJlZj1hYmNkIHh5egogMDogPGEgaHJlZj1hYmNkCiAxOiA8dW5zZXQ+CiAyOiA8dW5zZXQ+CiAzOiBhYmNkCiAgICA8YSBocmVmPVwiYWJjZCB4eXogcHFyXCIgY2F0cwogMDogPGEgaHJlZj0iYWJjZCB4eXogcHFyIgogMTogIgogMjogYWJjZCB4eXogcHFyCiAgICA8YSBocmVmICAgICAgID0gICAgICAgXCdhYmNkIHh5eiBwcXJcJyBjYXRzCiAwOiA8YSBocmVmICAgICAgID0gICAgICAgJ2FiY2QgeHl6IHBxcicKIDE6ICcKIDI6IGFiY2QgeHl6IHBxcgoKLygoWikrfEEpKi8KICAgIFpBQkNERUZHCiAwOiBaQQogMTogQQogMjogWgoKLyhaKCl8QSkqLwogICAgWkFCQ0RFRkcKIDA6IFpBCiAxOiBBCiAyOiAKCi8oWigoKSl8QSkqLwogICAgWkFCQ0RFRkcKIDA6IFpBCiAxOiBBCiAyOiAKIDM6IAoKLygoPz5aKSt8QSkqLwogICAgWkFCQ0RFRkcKIDA6IFpBCiAxOiBBCgovKCg/PikrfEEpKi8KICAgIFpBQkNERUZHCiAwOiAKIDE6IAoKL2EqL2cKICAgIGFiYmFiCiAwOiBhCiAwOiAKIDA6IAogMDogYQogMDogCiAwOiAKCi9eW1xkLWFdLwogICAgYWJjZGUKIDA6IGEKICAgIC10aGluZ3MKIDA6IC0KICAgIDBkaWdpdAogMDogMApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJjZGVmICAgIApObyBtYXRjaAogICAgCi9bWzpzcGFjZTpdXSsvCiAgICA+IFx4MDlceDBhXHgwY1x4MGRceDBiPAogMDogIFx4MDlceDBhXHgwY1x4MGRceDBiCiAgICAgCi9bWzpibGFuazpdXSsvCiAgICA+IFx4MDlceDBhXHgwY1x4MGRceDBiPAogMDogIFx4MDkKICAgICAKL1tcc10rLwogICAgPiBceDA5XHgwYVx4MGNceDBkXHgwYjwKIDA6ICBceDA5XHgwYVx4MGNceDBkXHgwYgogICAgIAovXHMrLwogICAgPiBceDA5XHgwYVx4MGNceDBkXHgwYjwKIDA6ICBceDA5XHgwYVx4MGNceDBkXHgwYgogICAgIAovYQtiL3gKICAgIGFiCiAwOiBhYgoKLyg/IVxBKXgvbQogICAgYVxueGJcbgogMDogeAoKLyg/IV4peC9tClw9IEV4cGVjdCBubyBtYXRjaAogICAgYVxueGJcbgpObyBtYXRjaAoKL2FiY1xRYWJjXEVhYmMvCiAgICBhYmNhYmNhYmMKIDA6IGFiY2FiY2FiYwogICAgCi9hYmNcUSgqK3xcRWFiYy8KICAgIGFiYygqK3xhYmMgCiAwOiBhYmMoKit8YWJjCgovICAgYWJjXFEgYWJjXEVhYmMveAogICAgYWJjIGFiY2FiYwogMDogYWJjIGFiY2FiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY2FiY2FiYyAgCk5vIG1hdGNoCiAgICAKL2FiYyNjb21tZW50CiAgICBcUSNub3QgY29tbWVudAogICAgbGl0ZXJhbFxFL3gKICAgIGFiYyNub3QgY29tbWVudFxuICAgIGxpdGVyYWwgICAgIAogMDogYWJjI25vdCBjb21tZW50XHgwYSAgICBsaXRlcmFsCgovYWJjI2NvbW1lbnQKICAgIFxRI25vdCBjb21tZW50CiAgICBsaXRlcmFsL3gKICAgIGFiYyNub3QgY29tbWVudFxuICAgIGxpdGVyYWwgICAgIAogMDogYWJjI25vdCBjb21tZW50XHgwYSAgICBsaXRlcmFsCgovYWJjI2NvbW1lbnQKICAgIFxRI25vdCBjb21tZW50CiAgICBsaXRlcmFsXEUgI21vcmUgY29tbWVudAogICAgL3gKICAgIGFiYyNub3QgY29tbWVudFxuICAgIGxpdGVyYWwgICAgIAogMDogYWJjI25vdCBjb21tZW50XHgwYSAgICBsaXRlcmFsCgovYWJjI2NvbW1lbnQKICAgIFxRI25vdCBjb21tZW50CiAgICBsaXRlcmFsXEUgI21vcmUgY29tbWVudC94CiAgICBhYmMjbm90IGNvbW1lbnRcbiAgICBsaXRlcmFsICAgICAKIDA6IGFiYyNub3QgY29tbWVudFx4MGEgICAgbGl0ZXJhbAoKL1xRYWJjXCR4eXpcRS8KICAgIGFiY1xcXCR4eXoKIDA6IGFiY1wkeHl6CgovXFFhYmNcRVwkXFF4eXpcRS8KICAgIGFiY1wkeHl6CiAwOiBhYmMkeHl6CgovXEdhYmMvCiAgICBhYmMKIDA6IGFiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5emFiYyAgCk5vIG1hdGNoCgovXEdhYmMuL2cKICAgIGFiYzFhYmMyeHl6YWJjMwogMDogYWJjMQogMDogYWJjMgoKL2FiYy4vZwogICAgYWJjMWFiYzJ4eXphYmMzIAogMDogYWJjMQogMDogYWJjMgogMDogYWJjMwoKL2EoP3g6IGIgYyApZC8KICAgIFhhYmNkWQogMDogYWJjZApcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBYYSBiIGMgZCBZIApObyBtYXRjaAoKLygoP3gpeCB5IHogfCBhIGIgYykvCiAgICBYYWJjWQogMDogYWJjCiAxOiBhYmMKICAgIEF4eXpCIAogMDogeHl6CiAxOiB4eXoKCi8oP2kpQUIoPy1pKUMvCiAgICBYYWJDWQogMDogYWJDClw9IEV4cGVjdCBubyBtYXRjaAogICAgWGFiY1kgIApObyBtYXRjaAoKLygoP2kpQUIoPy1pKUN8RClFLwogICAgYWJDRQogMDogYWJDRQogMTogYWJDCiAgICBERQogMDogREUKIDE6IEQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNFCk5vIG1hdGNoCiAgICBhYkNlICAKTm8gbWF0Y2gKICAgIGRFCk5vIG1hdGNoCiAgICBEZSAgICAKTm8gbWF0Y2gKCi8oLiopXGQrXDEvCiAgICBhYmMxMjNhYmMKIDA6IGFiYzEyM2FiYwogMTogYWJjCiAgICBhYmMxMjNiYyAKIDA6IGJjMTIzYmMKIDE6IGJjCgovKC4qKVxkK1wxL3MKICAgIGFiYzEyM2FiYwogMDogYWJjMTIzYWJjCiAxOiBhYmMKICAgIGFiYzEyM2JjIAogMDogYmMxMjNiYwogMTogYmMKICAgIAovKCguKikpXGQrXDEvCiAgICBhYmMxMjNhYmMKIDA6IGFiYzEyM2FiYwogMTogYWJjCiAyOiBhYmMKICAgIGFiYzEyM2JjICAKIDA6IGJjMTIzYmMKIDE6IGJjCiAyOiBiYwoKIyBUaGlzIHRlc3RzIGZvciBhbiBJUHY2IGFkZHJlc3MgaW4gdGhlIGZvcm0gd2hlcmUgaXQgY2FuIGhhdmUgdXAgdG8KIyBlaWdodCBjb21wb25lbnRzLCBvbmUgYW5kIG9ubHkgb25lIG9mIHdoaWNoIGlzIGVtcHR5LiBUaGlzIG11c3QgYmUKIyBhbiBpbnRlcm5hbCBjb21wb25lbnQuIAoKL14oPyE6KSAgICAgICAgICAgICAgICAgICAgICAgIyBjb2xvbiBkaXNhbGxvd2VkIGF0IHN0YXJ0CiAgKD86ICAgICAgICAgICAgICAgICAgICAgICAgICMgc3RhcnQgb2YgaXRlbQogICAgKD86IFswLTlhLWZdezEsNH0gfCAgICAgICAjIDEtNCBoZXggZGlnaXRzIG9yCiAgICAoPygxKTAgfCAoKSApICkgICAgICAgICAgICMgaWYgbnVsbCBwcmV2aW91c2x5IG1hdGNoZWQsIGZhaWw7IGVsc2UgbnVsbAogICAgOiAgICAgICAgICAgICAgICAgICAgICAgICAjIGZvbGxvd2VkIGJ5IGNvbG9uCiAgKXsxLDd9ICAgICAgICAgICAgICAgICAgICAgICMgZW5kIGl0ZW07IDEtNyBvZiB0aGVtIHJlcXVpcmVkICAgICAgICAgICAgICAgCiAgWzAtOWEtZl17MSw0fSAkICAgICAgICAgICAgICMgZmluYWwgaGV4IG51bWJlciBhdCBlbmQgb2Ygc3RyaW5nCiAgKD8oMSl8LikgICAgICAgICAgICAgICAgICAgICMgY2hlY2sgdGhhdCB0aGVyZSB3YXMgYW4gZW1wdHkgY29tcG9uZW50CiAgL2l4CiAgICBhMTIzOjphMTIzCiAwOiBhMTIzOjphMTIzCiAxOiAKICAgIGExMjM6YjM0Mjo6YWJjZAogMDogYTEyMzpiMzQyOjphYmNkCiAxOiAKICAgIGExMjM6YjM0Mjo6MzI0ZTphYmNkCiAwOiBhMTIzOmIzNDI6OjMyNGU6YWJjZAogMTogCiAgICBhMTIzOmRkZGU6YjM0Mjo6MzI0ZTphYmNkCiAwOiBhMTIzOmRkZGU6YjM0Mjo6MzI0ZTphYmNkCiAxOiAKICAgIGExMjM6ZGRkZTpiMzQyOjozMjRlOmRjYmE6YWJjZAogMDogYTEyMzpkZGRlOmIzNDI6OjMyNGU6ZGNiYTphYmNkCiAxOiAKICAgIGExMjM6ZGRkZTo5OTk5OmIzNDI6OjMyNGU6ZGNiYTphYmNkCiAwOiBhMTIzOmRkZGU6OTk5OTpiMzQyOjozMjRlOmRjYmE6YWJjZAogMTogClw9IEV4cGVjdCBubyBtYXRjaAogICAgMToyOjM6NDo1OjY6Nzo4Ck5vIG1hdGNoCiAgICBhMTIzOmJjZTpkZGRlOjk5OTk6YjM0Mjo6MzI0ZTpkY2JhOmFiY2QKTm8gbWF0Y2gKICAgIGExMjM6Ojk5OTk6YjM0Mjo6MzI0ZTpkY2JhOmFiY2QKTm8gbWF0Y2gKICAgIGFiY2RlOjI6Mzo0OjU6Njo3OjgKTm8gbWF0Y2gKICAgIDo6MQpObyBtYXRjaAogICAgYWJjZDpmZWUwOjEyMzo6ICAgCk5vIG1hdGNoCiAgICA6MQpObyBtYXRjaAogICAgMTogIApObyBtYXRjaAoKL1t6XFFhLWRdXEVdLwogICAgegogMDogegogICAgYQogMDogYQogICAgLQogMDogLQogICAgZAogMDogZAogICAgXSAKIDA6IF0KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBiICAgICAKTm8gbWF0Y2gKCi8oYSspKmIvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSAKTm8gbWF0Y2gKICAgIAovKD9pKXJlZyg/OnVsKD86W2HkXXxhZSlyfGV4KS8KICAgIFJFR3VsYXIKIDA6IFJFR3VsYXIKICAgIHJlZ3VsYWVyCiAwOiByZWd1bGFlcgogICAgUmVnZXggIAogMDogUmVnZXgKICAgIHJlZ3Vs5HIgCiAwOiByZWd1bFx4ZTRyCgovxebl5FvgLf/ALd9dKy8KICAgIMXm5eTgCiAwOiBceGM1XHhlNlx4ZTVceGU0XHhlMAogICAgxebl5P8KIDA6IFx4YzVceGU2XHhlNVx4ZTRceGZmCiAgICDF5uXkwAogMDogXHhjNVx4ZTZceGU1XHhlNFx4YzAKICAgIMXm5eTfCiAwOiBceGM1XHhlNlx4ZTVceGU0XHhkZgoKLyg/PD1aKVguLwogIFx4ODRYQVpYQgogMDogWEIKCi9hYiBjZCAoP3gpIGRlIGZnLwogICAgYWIgY2QgZGVmZwogMDogYWIgY2QgZGVmZwoKL2FiIGNkKD94KSBkZSBmZy8KICAgIGFiIGNkZGVmZwogMDogYWIgY2RkZWZnClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFiY2RkZWZnCk5vIG1hdGNoCgovKD88IVteZl1vbykoYmFyKS8KICAgIGZvb2JhclggCiAwOiBiYXIKIDE6IGJhcgpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBib29iYXJYCk5vIG1hdGNoCgovKD88IVteZl0pWC8KICAgIG9mZlgKIDA6IFgKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBvbnlYICAKTm8gbWF0Y2gKCi8oPzw9W15mXSlYLwogICAgb255WAogMDogWApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIG9mZlggCk5vIG1hdGNoCgovXi9nbQogICAgYVxuYlxuY1xuCiAwOiAKIDA6IAogMDogCiAgICBcIAogMDogCiAgICAKLyg/PD1DXG4pXi9nbQogICAgQVxuQ1xuQ1xuIAogMDogCgovKD86KD8oMSlhfGIpKFgpKSsvCiAgICBiWGFYCiAwOiBiWGFYCiAxOiBYCgovKD86KD8oMSlcMWF8YikoWHxZKSkrLwogICAgYlhYYVlZYVkKIDA6IGJYWGFZWWFZCiAxOiBZCiAgICBiWFlhWFhhWCAgCiAwOiBiWAogMTogWAoKLygpKCkoKSgpKCkoKSgpKCkoKSg/Oig/KDEwKVwxMGF8YikoWHxZKSkrLwogICAgYlhYYVlZYVkKIDA6IGJYCiAxOiAKIDI6IAogMzogCiA0OiAKIDU6IAogNjogCiA3OiAKIDg6IAogOTogCjEwOiBYCgovW1ssYWJjLF0rXS8KICAgIGFiY10KIDA6IGFiY10KICAgIGEsYl0KIDA6IGEsYl0KICAgIFthLGIsY10gIAogMDogW2EsYixjXQoKLyg/LXg6ICkveAogICAgQVx4MjBCCiAwOiAgCiAgICAKIig/eCkoPy14OiBccyojXHMqKSIKICAgIEEgIyBCCiAwOiAgIyAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAjICAKTm8gbWF0Y2gKCiIoP3gtaXMpKD86KD8taXhzKSBccyojXHMqKSBpbmNsdWRlIgogICAgQSAjaW5jbHVkZQogMDogICNpbmNsdWRlClw9IEV4cGVjdCBubyBtYXRjaAogICAgQSNpbmNsdWRlICAKTm8gbWF0Y2gKICAgIEEgI0luY2x1ZGUKTm8gbWF0Y2gKCi9hKmIqXHcvCiAgICBhYWFiYmJiCiAwOiBhYWFiYmJiCiAgICBhYWFhCiAwOiBhYWFhCiAgICBhCiAwOiBhCgovYSpiP1x3LwogICAgYWFhYmJiYgogMDogYWFhYmIKICAgIGFhYWEKIDA6IGFhYWEKICAgIGEKIDA6IGEKCi9hKmJ7MCw0fVx3LwogICAgYWFhYmJiYgogMDogYWFhYmJiYgogICAgYWFhYQogMDogYWFhYQogICAgYQogMDogYQoKL2EqYnswLH1cdy8KICAgIGFhYWJiYmIKIDA6IGFhYWJiYmIKICAgIGFhYWEKIDA6IGFhYWEKICAgIGEKIDA6IGEKICAgIAovYSpcZCpcdy8KICAgIDBhCiAwOiAwYQogICAgYSAKIDA6IGEKICAgIAovYSpiICpcdy94CiAgICBhIAogMDogYQoKL2EqYiNjb21tZW50CiAgKlx3L3gKICAgIGEgCiAwOiBhCgovYSogYiAqXHcveAogICAgYSAKIDA6IGEKCi9eXHcrPS4qKFxcXG4uKikqLwogICAgYWJjPXh5elxcXG5wcXIKIDA6IGFiYz14eXpcCgovKD89KFx3KykpXDE6LwogICAgYWJjZDoKIDA6IGFiY2Q6CiAxOiBhYmNkCgovXig/PShcdyspKVwxOi8KICAgIGFiY2Q6CiAwOiBhYmNkOgogMTogYWJjZAoKL15cRWFiYy8KICAgIGFiYwogMDogYWJjCiAgICAKL15bXEVhYmNdLwogICAgYQogMDogYQpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBFIApObyBtYXRjaAogICAgCi9eW2EtXEVjXS8KICAgIGIKIDA6IGIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAtCk5vIG1hdGNoCiAgICBFICAgIApObyBtYXRjaAoKL15bYVxFXEUtXEVjXS8KICAgIGIKIDA6IGIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAtCk5vIG1hdGNoCiAgICBFICAgIApObyBtYXRjaAoKL15bXEVcUWFcRS1cUXpcRV0rLwogICAgYgogMDogYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIC0gIApObyBtYXRjaAogICAgCi9eW2FcUV1iY1xFXS8KICAgIGEKIDA6IGEKICAgIF0KIDA6IF0KICAgIGMKIDA6IGMKICAgIAovXlthLVxRXEVdLwogICAgYQogMDogYQogICAgLSAgICAgCiAwOiAtCgovXihhKCkqKSovCiAgICBhYWFhCiAwOiBhYWFhCiAxOiBhCiAyOiAKCi9eKD86YSg/Oig/OikpKikqLwogICAgYWFhYQogMDogYWFhYQoKL14oYSgpKykrLwogICAgYWFhYQogMDogYWFhYQogMTogYQogMjogCgovXig/OmEoPzooPzopKSspKy8KICAgIGFhYWEKIDA6IGFhYWEKCi8oYSl7MCwzfSg/KDEpYnwoY3wpKSpELwogICAgYWJiRAogMDogYWJiRAogMTogYQogICAgY2NjY0QKIDA6IGNjY2NECiAxOiA8dW5zZXQ+CiAyOiAKICAgIEQgIAogMDogRAogMTogPHVuc2V0PgogMjogCgovKGF8KSpcZC8KICBhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWE0CiAwOiBhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWE0CiAxOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhCk5vIG1hdGNoCgovKD8+YXwpKlxkLwogIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYTQKIDA6IGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYTQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhCk5vIG1hdGNoCgovKD86YXwpKlxkLwogIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYTQKIDA6IGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYTQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhCk5vIG1hdGNoCgovXFovZwogIGFiY1xuCiAwOiAKIDA6IAogIAovXig/cykoPz4uKikoPzwhXG4pLwogIGFiYwogMDogYWJjClw9IEV4cGVjdCBubyBtYXRjaAogIGFiY1xuICAKTm8gbWF0Y2gKCi9eKD8hW15cbl0qXG5ceikvCiAgYWJjCiAwOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgYWJjXG4gCk5vIG1hdGNoCiAgCi9ceig/PCFcbikvCiAgYWJjCiAwOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgYWJjXG4gIApObyBtYXRjaAoKLyguKiguKT8pKi8KICAgIGFiY2QKIDA6IGFiY2QKIDE6IAoKLyggKEEgfCAoPygxKTB8KSApKiAgICkveAogICAgYWJjZAogMDogCiAxOiAKIDI6IAoKLyggKCAoPygxKTB8KSApKiAgICkveAogICAgYWJjZAogMDogCiAxOiAKIDI6IAoKLyggICg/KDEpMHwpKiAgICkveAogICAgYWJjZAogMDogCiAxOiAKCi9bWzphYmNkOnh5el1dLwogICAgYV0KIDA6IGFdCiAgICA6XSAKIDA6IDpdCiAgICAKL1thYmNbOnhcXXBxcl0vCiAgICBhCiAwOiBhCiAgICBbCiAwOiBbCiAgICA6CiAwOiA6CiAgICBdCiAwOiBdCiAgICBwICAgIAogMDogcAoKLy4qW29wXVt4eXpdLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGZvb2FiY2ZvbwpObyBtYXRjaAoKLyg/KD89LipiKWJ8XikvCiAgIGFkYwogMDogCiAgIGFiYyAKIDA6IGIKCi8oPyg/PV4uKmIpYnxeKS8KICAgYWRjCiAwOiAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgIGFiYyAKTm8gbWF0Y2gKCi8oPyg/PS4qYilifF4pKi8KICAgYWRjCiAwOiAKICAgYWJjIAogMDogCgovKD8oPz0uKmIpYnxeKSsvCiAgIGFkYwogMDogCiAgIGFiYyAKIDA6IGIKCi8oPyg/PWIpLipifF5kKS8KICAgIGFiYwogMDogYgoKLyg/KD89LipiKS4qYnxeZCkvCiAgICBhYmMKIDA6IGFiCgovXiUoKD8oPz1bYV0pW14lXSl8YikqJSQvCiAgICAlYWIlCiAwOiAlYWIlCiAxOiAKCi8oP2kpYSg/LWkpYnxjLwogICAgWGFiWAogMDogYWIKICAgIFhBYlgKIDA6IEFiCiAgICBDY0MgCiAwOiBjClw9IEV4cGVjdCBubyBtYXRjaAogICAgWEFCWCAgIApObyBtYXRjaAoKL1tceDAwLVx4ZmZcc10rLwogICAgXHgwYVx4MGJceDBjXHgwZAogMDogXHgwYVx4MGJceDBjXHgwZAoKLyhhYmMpXDEvaQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgYWJjCk5vIG1hdGNoCgovKGFiYylcMS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgIGFiYwpObyBtYXRjaAoKL1teYV0qL2kKICAgIDEyYWJjCiAwOiAxMgogICAgMTJBQkMKIDA6IDEyCgovW15hXSorL2kKICAgIDEyYWJjCiAwOiAxMgogICAgMTJBQkMKIDA6IDEyCgovW15hXSo/WC9pClw9IEV4cGVjdCBubyBtYXRjaAogICAgMTJhYmMKTm8gbWF0Y2gKICAgIDEyQUJDCk5vIG1hdGNoCiAgICAKL1teYV0rP1gvaQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIDEyYWJjCk5vIG1hdGNoCiAgICAxMkFCQwpObyBtYXRjaAoKL1teYV0/WC9pCiAgICAxMmFYYmNYCiAwOiBYCiAgICAxMkFYQkNYCiAwOiBYCiAgICBCQ1ggCiAwOiBDWAoKL1teYV0/P1gvaQogICAgMTJhWGJjWAogMDogWAogICAgMTJBWEJDWAogMDogWAogICAgQkNYCiAwOiBDWAogICAgCi9bXmFdPytYL2kKICAgIDEyYVhiY1gKIDA6IGNYCiAgICAxMkFYQkNYCiAwOiBDWAogICAgQkNYIAogMDogQ1gKCi9bXmFdezIsM30vaQogICAgYWJjZGVmCiAwOiBiY2QKICAgIEFCQ0RFRiAgCiAwOiBCQ0QKCi9bXmFdezIsM30/L2kKICAgIGFiY2RlZgogMDogYmMKICAgIEFCQ0RFRiAgCiAwOiBCQwoKL1teYV17MiwzfSsvaQogICAgYWJjZGVmCiAwOiBiY2QKICAgIEFCQ0RFRiAgCiAwOiBCQ0QKCi8oKGF8KSspK1ovCiAgICBaCiAwOiBaCiAxOiAKIDI6IAoKLyhhKWJ8KGEpYy8KICAgIGFjCiAwOiBhYwogMTogPHVuc2V0PgogMjogYQoKLyg/PihhKSlifChhKWMvCiAgICBhYwogMDogYWMKIDE6IDx1bnNldD4KIDI6IGEKCi8oPz0oYSkpYWJ8KGEpYy8KICAgIGFjCiAwOiBhYwogMTogPHVuc2V0PgogMjogYQoKLygoPz4oYSkpYnwoYSljKS8KICAgIGFjCiAwOiBhYwogMTogYWMKIDI6IDx1bnNldD4KIDM6IGEKCi8oKD8+KGEpKWJ8KGEpYykrKy8KICAgIGFjCiAwOiBhYwogMTogYWMKIDI6IDx1bnNldD4KIDM6IGEKCi8oPzooPz4oYSkpYnwoYSljKSsrLwogICAgYWMKIDA6IGFjCiAxOiA8dW5zZXQ+CiAyOiBhCgovKD89KD8+KGEpKWJ8KGEpYykoLi4pLwogICAgYWMKIDA6IGFjCiAxOiA8dW5zZXQ+CiAyOiBhCiAzOiBhYwoKLyg/Pig/PihhKSlifChhKWMpLwogICAgYWMKIDA6IGFjCiAxOiA8dW5zZXQ+CiAyOiBhCgovKD86KD8+KFthYl0pKSkrYT0vYWZ0ZXJ0ZXh0CiAgICA9YmE9CiAwOiBiYT0KIDArIAogMTogYgoKLyg/PihbYWJdKSkrYT0vYWZ0ZXJ0ZXh0CiAgICA9YmE9CiAwOiBiYT0KIDArIAogMTogYgoKLygoPz4oYSspYikrKGFhYmFiKSkvCiAgICBhYWFhYmFhYWJhYWJhYgogMDogYWFhYWJhYWFiYWFiYWIKIDE6IGFhYWFiYWFhYmFhYmFiCiAyOiBhYWEKIDM6IGFhYmFiCgovKD8+YSt8YWIpKz9jLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYmMKTm8gbWF0Y2gKCi8oPz5hK3xhYikrYy8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWJjCk5vIG1hdGNoCgovKD86YSt8YWIpK2MvCiAgICBhYWJjCiAwOiBhYWJjCgovKD8oPz0oYSkpYSkvCiAgICBhCiAwOiBhCiAxOiBhCgovKD8oPz0oYSkpYSkoYikvCiAgICBhYgogMDogYWIKIDE6IGEKIDI6IGIKCi9eKD86YXxhYikrK2MvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYWJjCk5vIG1hdGNoCgovXig/PmF8YWIpKytjLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWFiYwpObyBtYXRjaAoKL14oPzphfGFiKStjLwogICAgYWFhYWJjCiAwOiBhYWFhYmMKCi8oPz1hYmMpezN9YWJjL2FmdGVydGV4dAogICAgYWJjYWJjYWJjCiAwOiBhYmMKIDArIGFiY2FiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5eiAgCk5vIG1hdGNoCiAgICAKLyg/PWFiYykrYWJjL2FmdGVydGV4dAogICAgYWJjYWJjYWJjCiAwOiBhYmMKIDArIGFiY2FiYwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHh5eiAgCk5vIG1hdGNoCiAgICAKLyg/PWFiYykrK2FiYy9hZnRlcnRleHQKICAgIGFiY2FiY2FiYwogMDogYWJjCiAwKyBhYmNhYmMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eXogIApObyBtYXRjaAogICAgCi8oPz1hYmMpezB9eHl6LwogICAgeHl6IAogMDogeHl6CgovKD89YWJjKXsxfXh5ei8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eXogCk5vIG1hdGNoCiAgICAKLyg/PShhKSk/Li8KICAgIGFiCiAwOiBhCiAxOiBhCiAgICBiYwogMDogYgogICAgICAKLyg/PShhKSk/Py4vCiAgICBhYgogMDogYQogICAgYmMKIDA6IGIKCi9eKD89KD8xKSk/W2F6XShbYWJjXSlkLwogICAgYWJkIAogMDogYWJkCiAxOiBiCiAgICB6Y2R4eCAKIDA6IHpjZAogMTogYwoKL14oPyFhKXswfVx3Ky8KICAgIGFhYWFhCiAwOiBhYWFhYQoKLyg/PD0oYWJjKSk/eHl6LwogICAgYWJjeHl6CiAwOiB4eXoKIDE6IGFiYwogICAgcHFyeHl6IAogMDogeHl6CgovXltcZzxhPl0rLwogICAgZ2dnPDw8YWFhPj4+CiAwOiBnZ2c8PDxhYWE+Pj4KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBcXGdhICAKTm8gbWF0Y2gKICAgIAovXltcZ2FdKy8KICAgIGdnZ2FnYWdheHl6IAogMDogZ2dnYWdhZ2EKICAgIAovXls6YVs6ZGlnaXQ6XV0rLwogICAgYWFhYTQ0NDo6OlogCiAwOiBhYWFhNDQ0Ojo6CgovXls6YVs6ZGlnaXQ6XTpiXSsvCiAgICBhYWFhNDQ0Ojo6YmJiWiAKIDA6IGFhYWE0NDQ6OjpiYmIKCi9bOmFdeHh4W2I6XS8KICAgICA6eHh4OgogMDogOnh4eDoKICAgICAKLyg/PD1hezJ9KWIvaQogICAgeGFhYmMKIDA6IGIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4YWJjICAKTm8gbWF0Y2gKCi8oPzwhYXsyfSliL2kKICAgIHhhYmMKIDA6IGIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4YWFiYyAgCk5vIG1hdGNoCgovKD88PWFcaCljLwogICAgeGEgYwogMDogYwogICAgCi8oPzw9W15hXXsyfSliLwogICAgYXh4YmMKIDA6IGIKICAgIGFBQWJjIAogMDogYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIHhhYWJjICAgIApObyBtYXRjaAoKLyg/PD1bXmFdezJ9KWIvaQogICAgYXh4YmMgIAogMDogYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFBQWJjIApObyBtYXRjaAogICAgeGFhYmMgICAgCk5vIG1hdGNoCgovKD88PWFcSCljLwogICAgYWJjCiAwOiBjCgovKD88PWFcViljLwogICAgYWJjCiAwOiBjCiAgICAKLyg/PD1hXHYpYy8KICAgIGFcbmMKIDA6IGMKCi8oPyg/PWMpY3xkKSsrWS8KICAgIFhjY2NkZFlYCiAwOiBjY2NkZFkKCi8oPyg/PWMpY3xkKSorWS8KICAgIFhjY2NkZFlYCiAwOiBjY2NkZFkKCi9eKGF7MiwzfSl7Mix9K2EvCiAgICBhYWFhYWFhCiAwOiBhYWFhYWFhCiAxOiBhYWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFhYWEKTm8gbWF0Y2gKICAgIGFhYWFhYWFhYSAKTm8gbWF0Y2gKCi9eKGF7MiwzfSkrK2EvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYWFhCk5vIG1hdGNoCgovXihhezIsM30pKithLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWFhYQpObyBtYXRjaAoKL1xIXGhcVlx2LwogICAgWCBYXHgwYQogMDogWCBYXHgwYQogICAgWFx4MDlYXHgwYgogMDogWFx4MDlYXHgwYgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFx4YTAgWFx4MGEgICAKTm8gbWF0Y2gKICAgIAovXEgqXGgrXFY/XHZ7Myw0fS8KICAgIFx4MDlceDIwXHhhMFhceDBhXHgwYlx4MGNceDBkXHgwYQogMDogXHgwOSBceGEwWFx4MGFceDBiXHgwY1x4MGQKICAgIFx4MDlceDIwXHhhMFx4MGFceDBiXHgwY1x4MGRceDBhCiAwOiBceDA5IFx4YTBceDBhXHgwYlx4MGNceDBkCiAgICBceDA5XHgyMFx4YTBceDBhXHgwYlx4MGMKIDA6IFx4MDkgXHhhMFx4MGFceDBiXHgwYwpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBceDA5XHgyMFx4YTBceDBhXHgwYgpObyBtYXRjaAogICAgIAovXEh7Myw0fS8KICAgIFhZICBBQkNERQogMDogQUJDRAogICAgWFkgIFBRUiBTVCAKIDA6IFBRUgogICAgCi8uXGh7Myw0fS4vCiAgICBYWSAgQUIgICAgUFFSUwogMDogQiAgICBQCgovXGgqWFxoP1xIK1lcSD9aLwogICAgPlhOTk5ZWgogMDogWE5OTllaCiAgICA+ICBYIE5ZUVoKIDA6ICAgWCBOWVFaClw9IEV4cGVjdCBubyBtYXRjaAogICAgPlhZWiAgIApObyBtYXRjaAogICAgPiAgWCBOWSBaCk5vIG1hdGNoCgovXHYqWFx2P1lcditaXFYqXHgwYVxWK1x4MGJcVnsyLDN9XHgwYy8KICAgID5YWVx4MGFaXHgwYUFceDBiTk5ceDBjCiAwOiBYWVx4MGFaXHgwYUFceDBiTk5ceDBjCiAgICA+XHgwYVx4MGRYXHgwYVlceDBhXHgwYlpaWlx4MGFBQUFceDBiTk5OXHgwYwogMDogXHgwYVx4MGRYXHgwYVlceDBhXHgwYlpaWlx4MGFBQUFceDBiTk5OXHgwYwoKLyhmb28pXEtiYXIvCiAgICBmb29iYXIKIDA6IGJhcgogMTogZm9vCiAgIAovKGZvbykoXEtiYXJ8YmF6KS8KICAgIGZvb2JhcgogMDogYmFyCiAxOiBmb28KIDI6IGJhcgogICAgZm9vYmF6IAogMDogZm9vYmF6CiAxOiBmb28KIDI6IGJhegoKLyhmb29cS2JhciliYXovCiAgICBmb29iYXJiYXoKIDA6IGJhcmJhegogMTogZm9vYmFyCgovYWJjXEt8ZGVmXEsvZyxhZnRlcnRleHQKICAgIFhhYmNkZWZnaGkKIDA6IAogMCsgZGVmZ2hpCiAwOiAKIDArIGdoaQoKL2FiXEtjfGRlXEtmL2csYWZ0ZXJ0ZXh0CiAgICBYYWJjZGVmZ2hpCiAwOiBjCiAwKyBkZWZnaGkKIDA6IGYKIDArIGdoaQogICAgCi8oPz1DKS9nLGFmdGVydGV4dAogICAgQUJDREVDQkEKIDA6IAogMCsgQ0RFQ0JBCiAwOiAKIDArIENCQQogICAgCi9eYWJjXEsvYWZ0ZXJ0ZXh0CiAgICBhYmNkZWYKIDA6IAogMCsgZGVmClw9IEV4cGVjdCBubyBtYXRjaAogICAgZGVmYWJjeHl6ICAgCk5vIG1hdGNoCgovXihhKGIpKVwxXGcxXGd7MX1cZy0xXGd7LTF9XGd7LTJ9Wi8KICAgIGFiYWJhYmFiYmJhYlpYWFhYCiAwOiBhYmFiYWJhYmJiYWJaCiAxOiBhYgogMjogYgoKLyg/PEE+dG9tfGJvbiktXGd7QX0vCiAgICB0b20tdG9tCiAwOiB0b20tdG9tCiAxOiB0b20KICAgIGJvbi1ib24gCiAwOiBib24tYm9uCiAxOiBib24KICAgIAovKF4oYXxiXGd7LTF9KSkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmFjeHh4Ck5vIG1hdGNoCgovKD98KGFiYyl8KHh5eikpXDEvCiAgICBhYmNhYmMKIDA6IGFiY2FiYwogMTogYWJjCiAgICB4eXp4eXogCiAwOiB4eXp4eXoKIDE6IHh5egpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiY3h5egpObyBtYXRjaAogICAgeHl6YWJjICAgCk5vIG1hdGNoCiAgICAKLyg/fChhYmMpfCh4eXopKSg/MSkvCiAgICBhYmNhYmMKIDA6IGFiY2FiYwogMTogYWJjCiAgICB4eXphYmMgCiAwOiB4eXphYmMKIDE6IHh5egpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICB4eXp4eXogCk5vIG1hdGNoCiAKL15YKD81KShhKSg/fChiKXwocSkpKGMpKGQpKFkpLwogICAgWFlhYmNkWQogMDogWFlhYmNkWQogMTogYQogMjogYgogMzogYwogNDogZAogNTogWQoKL15YKD83KShhKSg/fChifChyKShzKSl8KHEpKShjKShkKShZKS8KICAgIFhZYWJjZFkKIDA6IFhZYWJjZFkKIDE6IGEKIDI6IGIKIDM6IDx1bnNldD4KIDQ6IDx1bnNldD4KIDU6IGMKIDY6IGQKIDc6IFkKCi9eWCg/NykoYSkoP3woYnwoP3wocil8KHQpKShzKSl8KHEpKShjKShkKShZKS8KICAgIFhZYWJjZFkKIDA6IFhZYWJjZFkKIDE6IGEKIDI6IGIKIDM6IDx1bnNldD4KIDQ6IDx1bnNldD4KIDU6IGMKIDY6IGQKIDc6IFkKCi8oPydhYmMnXHcrKTpcazxhYmM+ezJ9LwogICAgYTphYXh5egogMDogYTphYQogMTogYQogICAgYWI6YWJhYnh5egogMDogYWI6YWJhYgogMTogYWIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhOmF4eXoKTm8gbWF0Y2gKICAgIGFiOmFieHl6Ck5vIG1hdGNoCgovKD8nYWJjJ1x3Kyk6XGd7YWJjfXsyfS8KICAgIGE6YWF4eXoKIDA6IGE6YWEKIDE6IGEKICAgIGFiOmFiYWJ4eXoKIDA6IGFiOmFiYWIKIDE6IGFiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYTpheHl6Ck5vIG1hdGNoCiAgICBhYjphYnh5egpObyBtYXRjaAoKL14oPzxhYj5hKT8gKD8oPGFiPilifGMpICg/KCdhYicpZHxlKS94CiAgICBhYmQKIDA6IGFiZAogMTogYQogICAgY2UKIDA6IGNlCgovXihhLilcZy0xWi8KICAgIGFYYVhaCiAwOiBhWGFYWgogMTogYVgKCi9eKGEuKVxney0xfVovCiAgICBhWGFYWgogMDogYVhhWFoKIDE6IGFYCgovXig/KERFRklORSkgKD88QT4gYSkgKD88Qj4gYikgKSAgKD8mQSkgKD8mQikgL3gKICAgIGFiY2QKIDA6IGFiCgovKD88TkFNRT4oPyZOQU1FX1BBVCkpXHMrKD88QUREUj4oPyZBRERSRVNTX1BBVCkpCiAgKD8oREVGSU5FKQogICg/PE5BTUVfUEFUPlthLXpdKykKICAoPzxBRERSRVNTX1BBVD5cZCspCiAgKS94CiAgICBtZXRjYWxmZSAzMwogMDogbWV0Y2FsZmUgMzMKIDE6IG1ldGNhbGZlCiAyOiAzMwoKLyg/KERFRklORSkoPzxieXRlPjJbMC00XVxkfDI1WzAtNV18MVxkXGR8WzEtOV0/XGQpKVxiKD8mYnl0ZSkoXC4oPyZieXRlKSl7M30vCiAgICAxLjIuMy40CiAwOiAxLjIuMy40CiAxOiA8dW5zZXQ+CiAyOiAuNAogICAgMTMxLjExMS4xMC4yMDYKIDA6IDEzMS4xMTEuMTAuMjA2CiAxOiA8dW5zZXQ+CiAyOiAuMjA2CiAgICAxMC4wLjAuMAogMDogMTAuMC4wLjAKIDE6IDx1bnNldD4KIDI6IC4wClw9IEV4cGVjdCBubyBtYXRjaAogICAgMTAuNgpObyBtYXRjaAogICAgNDU1LjMuNC41Ck5vIG1hdGNoCgovXGIoPyZieXRlKShcLig/JmJ5dGUpKXszfSg/KERFRklORSkoPzxieXRlPjJbMC00XVxkfDI1WzAtNV18MVxkXGR8WzEtOV0/XGQpKS8KICAgIDEuMi4zLjQKIDA6IDEuMi4zLjQKIDE6IC40CiAgICAxMzEuMTExLjEwLjIwNgogMDogMTMxLjExMS4xMC4yMDYKIDE6IC4yMDYKICAgIDEwLjAuMC4wCiAwOiAxMC4wLjAuMAogMTogLjAKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMC42Ck5vIG1hdGNoCiAgICA0NTUuMy40LjUKTm8gbWF0Y2gKCi9eKFx3Kyt8XHMrKykqJC8KICAgIG5vdyBpcyB0aGUgdGltZSBmb3IgYWxsIGdvb2QgbWVuIHRvIGNvbWUgdG8gdGhlIGFpZCBvZiB0aGUgcGFydHkKIDA6IG5vdyBpcyB0aGUgdGltZSBmb3IgYWxsIGdvb2QgbWVuIHRvIGNvbWUgdG8gdGhlIGFpZCBvZiB0aGUgcGFydHkKIDE6IHBhcnR5Clw9IEV4cGVjdCBubyBtYXRjaAogICAgdGhpcyBpcyBub3QgYSBsaW5lIHdpdGggb25seSB3b3JkcyBhbmQgc3BhY2VzIQpObyBtYXRjaAoKLyhcZCsrKShcdykvCiAgICAxMjM0NWEKIDA6IDEyMzQ1YQogMTogMTIzNDUKIDI6IGEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjM0NSsKTm8gbWF0Y2gKCi9hKytiLwogICAgYWFhYgogMDogYWFhYgoKLyhhKytiKS8KICAgIGFhYWIKIDA6IGFhYWIKIDE6IGFhYWIKCi8oYSsrKWIvCiAgICBhYWFiCiAwOiBhYWFiCiAxOiBhYWEKCi8oW14oKV0rK3xcKFteKCldKlwpKSsvCiAgICAoKGFiYyhhZGUpdWZoKCkoKXgKIDA6IGFiYyhhZGUpdWZoKCkoKXgKIDE6IHgKCi9cKChbXigpXSsrfFwoW14oKV0rXCkpK1wpLwogICAgKGFiYykKIDA6IChhYmMpCiAxOiBhYmMKICAgIChhYmMoZGVmKXh5eikKIDA6IChhYmMoZGVmKXh5eikKIDE6IHh5egpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgICgoKClhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQpObyBtYXRjaAoKL14oW14oKV18XCgoPzEpKlwpKSokLwogICAgYWJjCiAwOiBhYmMKIDE6IGMKICAgIGEoYiljCiAwOiBhKGIpYwogMTogYwogICAgYShiKGMpKWQKIDA6IGEoYihjKSlkCiAxOiBkClw9IEV4cGVjdCBubyBtYXRjaCkKICAgIGEoYihjKWQKTm8gbWF0Y2gKCi9ePmFiYz4oW14oKV18XCgoPzEpKlwpKSo8eHl6PCQvCiAgID5hYmM+MTIzPHh5ejwKIDA6ID5hYmM+MTIzPHh5ejwKIDE6IDMKICAgPmFiYz4xKDIpMzx4eXo8CiAwOiA+YWJjPjEoMikzPHh5ejwKIDE6IDMKICAgPmFiYz4oMSgyKTMpPHh5ejwKIDA6ID5hYmM+KDEoMikzKTx4eXo8CiAxOiAoMSgyKTMpCgovXig/OigoLikoPzEpXDJ8KXwoKC4pKD8zKVw0fC4pKSQvaQogICAgMTIyMQogMDogMTIyMQogMTogMTIyMQogMjogMQogICAgU2F0YW5vc2NpbGxhdGVteW1ldGFsbGljc29uYXRhcwogMDogU2F0YW5vc2NpbGxhdGVteW1ldGFsbGljc29uYXRhcwogMTogPHVuc2V0PgogMjogPHVuc2V0PgogMzogU2F0YW5vc2NpbGxhdGVteW1ldGFsbGljc29uYXRhcwogNDogUwogICAgQW1hbmFwbGFuYWNhbmFsUGFuYW1hCiAwOiBBbWFuYXBsYW5hY2FuYWxQYW5hbWEKIDE6IDx1bnNldD4KIDI6IDx1bnNldD4KIDM6IEFtYW5hcGxhbmFjYW5hbFBhbmFtYQogNDogQQogICAgQWJsZXdhc0llcmVJc2F3RWxiYQogMDogQWJsZXdhc0llcmVJc2F3RWxiYQogMTogPHVuc2V0PgogMjogPHVuc2V0PgogMzogQWJsZXdhc0llcmVJc2F3RWxiYQogNDogQQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFRoZXF1aWNrYnJvd25mb3gKTm8gbWF0Y2gKCi9eKFxkK3xcKCg/MSkoWysqLV0pKD8xKVwpfC0oPzEpKSQvCiAgICAxMgogMDogMTIKIDE6IDEyCiAgICAoKCgyKzIpKi0zKS03KQogMDogKCgoMisyKSotMyktNykKIDE6ICgoKDIrMikqLTMpLTcpCiAyOiAtCiAgICAtMTIKIDA6IC0xMgogMTogLTEyClw9IEV4cGVjdCBubyBtYXRjaAogICAgKCgyKzIpKi0zKS03KQpObyBtYXRjaAoKL14oeCh5fCg/MSl7Mn0peikvCiAgICB4eXoKIDA6IHh5egogMTogeHl6CiAyOiB5CiAgICB4eHl6eHl6egogMDogeHh5enh5enoKIDE6IHh4eXp4eXp6CiAyOiB4eXp4eXoKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB4eHl6egpObyBtYXRjaAogICAgeHh5enh5enh5enoKTm8gbWF0Y2gKCi8oKDwgKD86ICg/KFIpIFxkKysgIHwgW148Pl0qKykgfCAoPzIpKSAqID4pKS94CiAgICA8PgogMDogPD4KIDE6IDw+CiAyOiA8PgogICAgPGFiY2Q+CiAwOiA8YWJjZD4KIDE6IDxhYmNkPgogMjogPGFiY2Q+CiAgICA8YWJjIDwxMjM+IGhpaj4KIDA6IDxhYmMgPDEyMz4gaGlqPgogMTogPGFiYyA8MTIzPiBoaWo+CiAyOiA8YWJjIDwxMjM+IGhpaj4KICAgIDxhYmMgPGRlZj4gaGlqPgogMDogPGRlZj4KIDE6IDxkZWY+CiAyOiA8ZGVmPgogICAgPGFiYzw+ZGVmPgogMDogPGFiYzw+ZGVmPgogMTogPGFiYzw+ZGVmPgogMjogPGFiYzw+ZGVmPgogICAgPGFiYzw+CiAwOiA8PgogMTogPD4KIDI6IDw+Clw9IEV4cGVjdCBubyBtYXRjaAogICAgPGFiYwpObyBtYXRjaAoKL15hKygqRkFJTCkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYWFhCk5vIG1hdGNoCiAgICAKL2ErYj9jKygqRkFJTCkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYmNjYwpObyBtYXRjaAoKL2ErYj8oKlBSVU5FKWMrKCpGQUlMKS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFiY2NjCk5vIG1hdGNoCgovYStiPygqQ09NTUlUKWMrKCpGQUlMKS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWFiY2NjCk5vIG1hdGNoCiAgICAKL2ErYj8oKlNLSVApYysoKkZBSUwpLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWJjY2NhYWFiY2NjCk5vIG1hdGNoCgovXig/OmFhYSgqVEhFTilcd3s2fXxiYmIoKlRIRU4pXHd7NX18Y2NjKCpUSEVOKVx3ezR9fFx3ezN9KS8KICAgIGFhYXh4eHh4eAogMDogYWFheHh4eHh4CiAgICBhYWErKysrKysgCiAwOiBhYWEKICAgIGJiYnh4eHh4CiAwOiBiYmJ4eHh4eAogICAgYmJiKysrKysgCiAwOiBiYmIKICAgIGNjY3h4eHgKIDA6IGNjY3h4eHgKICAgIGNjYysrKysgCiAwOiBjY2MKICAgIGRkZGRkZGRkICAgCiAwOiBkZGQKCi9eKGFhYSgqVEhFTilcd3s2fXxiYmIoKlRIRU4pXHd7NX18Y2NjKCpUSEVOKVx3ezR9fFx3ezN9KS8KICAgIGFhYXh4eHh4eAogMDogYWFheHh4eHh4CiAxOiBhYWF4eHh4eHgKICAgIGFhYSsrKysrKyAKIDA6IGFhYQogMTogYWFhCiAgICBiYmJ4eHh4eAogMDogYmJieHh4eHgKIDE6IGJiYnh4eHh4CiAgICBiYmIrKysrKyAKIDA6IGJiYgogMTogYmJiCiAgICBjY2N4eHh4CiAwOiBjY2N4eHh4CiAxOiBjY2N4eHh4CiAgICBjY2MrKysrIAogMDogY2NjCiAxOiBjY2MKICAgIGRkZGRkZGRkICAgCiAwOiBkZGQKIDE6IGRkZAoKL2ErYj8oKlRIRU4pYysoKkZBSUwpLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWJjY2MKTm8gbWF0Y2gKCi8oQSAoQXxCKCpBQ0NFUFQpfEMpIEQpKEUpL3gKICAgIEFCCiAwOiBBQgogMTogQUIKIDI6IEIKICAgIEFCWAogMDogQUIKIDE6IEFCCiAyOiBCCiAgICBBQURFCiAwOiBBQURFCiAxOiBBQUQKIDI6IEEKIDM6IEUKICAgIEFDREUKIDA6IEFDREUKIDE6IEFDRAogMjogQwogMzogRQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFEIApObyBtYXRjaAogICAgICAgIAovXlxXKisoPzooKC4pXFcqKyg/MSlcVyorXDJ8KXwoKC4pXFcqKyg/MylcVyorXDR8XFcqKy5cVyorKSlcVyorJC9pCiAgICAxMjIxCiAwOiAxMjIxCiAxOiAxMjIxCiAyOiAxCiAgICBTYXRhbiwgb3NjaWxsYXRlIG15IG1ldGFsbGljIHNvbmF0YXMhCiAwOiBTYXRhbiwgb3NjaWxsYXRlIG15IG1ldGFsbGljIHNvbmF0YXMhCiAxOiA8dW5zZXQ+CiAyOiA8dW5zZXQ+CiAzOiBTYXRhbiwgb3NjaWxsYXRlIG15IG1ldGFsbGljIHNvbmF0YXMKIDQ6IFMKICAgIEEgbWFuLCBhIHBsYW4sIGEgY2FuYWw6IFBhbmFtYSEKIDA6IEEgbWFuLCBhIHBsYW4sIGEgY2FuYWw6IFBhbmFtYSEKIDE6IDx1bnNldD4KIDI6IDx1bnNldD4KIDM6IEEgbWFuLCBhIHBsYW4sIGEgY2FuYWw6IFBhbmFtYQogNDogQQogICAgQWJsZSB3YXMgSSBlcmUgSSBzYXcgRWxiYS4KIDA6IEFibGUgd2FzIEkgZXJlIEkgc2F3IEVsYmEuCiAxOiA8dW5zZXQ+CiAyOiA8dW5zZXQ+CiAzOiBBYmxlIHdhcyBJIGVyZSBJIHNhdyBFbGJhCiA0OiBBClw9IEV4cGVjdCBubyBtYXRjaAogICAgVGhlIHF1aWNrIGJyb3duIGZveApObyBtYXRjaAoKL14oKC4pKD8xKVwyfC4pJC8KICAgIGEKIDA6IGEKIDE6IGEKICAgIGFiYQogMDogYWJhCiAxOiBhYmEKIDI6IGEKICAgIGFhYmFhICAKIDA6IGFhYmFhCiAxOiBhYWJhYQogMjogYQogICAgYWJjZGNiYSAKIDA6IGFiY2RjYmEKIDE6IGFiY2RjYmEKIDI6IGEKICAgIHBxYWFiYWFxcCAgCiAwOiBwcWFhYmFhcXAKIDE6IHBxYWFiYWFxcAogMjogcAogICAgYWJsZXdhc2llcmVpc2F3ZWxiYQogMDogYWJsZXdhc2llcmVpc2F3ZWxiYQogMTogYWJsZXdhc2llcmVpc2F3ZWxiYQogMjogYQpcPSBFeHBlY3Qgbm8gbWF0Y2ggICAgIAogICAgcmh1YmFyYgpObyBtYXRjaAogICAgdGhlIHF1aWNrIGJyb3duIGZveCAgCk5vIG1hdGNoCgovKGEpKD88PWIoPzEpKS8KICAgIGJhegogMDogYQogMTogYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGNheiAgCk5vIG1hdGNoCiAgICAKLyg/PD1iKD8xKSkoYSkvCiAgICB6YmFhegogMDogYQogMTogYQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYSAgCk5vIG1hdGNoCiAgICAKLyg/PFg+YSkoPzw9Yig/JlgpKS8KICAgIGJhegogMDogYQogMTogYQoKL14oP3woYWJjKXwoZGVmKSlcMS8KICAgIGFiY2FiYwogMDogYWJjYWJjCiAxOiBhYmMKICAgIGRlZmRlZiAKIDA6IGRlZmRlZgogMTogZGVmClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJjZGVmCk5vIG1hdGNoCiAgICBkZWZhYmMgICAKTm8gbWF0Y2gKICAgIAovXig/fChhYmMpfChkZWYpKSg/MSkvCiAgICBhYmNhYmMKIDA6IGFiY2FiYwogMTogYWJjCiAgICBkZWZhYmMKIDA6IGRlZmFiYwogMTogZGVmClw9IEV4cGVjdCBubyBtYXRjaAogICAgZGVmZGVmCk5vIG1hdGNoCiAgICBhYmNkZWYgICAgCk5vIG1hdGNoCgovKD86YSg/PHF1b3RlPiAoPzxhcG9zdHJvcGhlPicpfCg/PHJlYWxxdW90ZT4iKSkgfGIoPzxxdW90ZT4gKD88YXBvc3Ryb3BoZT4nKXwoPzxyZWFscXVvdGU+IikpICkgKD8oJ3F1b3RlJylbYS16XSt8WzAtOV0rKS94LGR1cG5hbWVzCiAgICBhXCJhYWFhYQogMDogYSJhYWFhYQogMTogIgogMjogPHVuc2V0PgogMzogIgogICAgYlwiYWFhYWEgCiAwOiBiImFhYWFhCiAxOiA8dW5zZXQ+CiAyOiA8dW5zZXQ+CiAzOiA8dW5zZXQ+CiA0OiAiCiA1OiA8dW5zZXQ+CiA2OiAiClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGJcIjExMTExCk5vIG1hdGNoCgovKD86KD8xKXxCKShBKCpGKXxDKS8KICAgIEFCQ0QKIDA6IEJDCiAxOiBDCiAgICBDQ0QKIDA6IENDCiAxOiBDClw9IEV4cGVjdCBubyBtYXRjaAogICAgQ0FEICAgCk5vIG1hdGNoCgovXig/Oig/MSl8QikoQSgqRil8QykvCiAgICBDQ0QKIDA6IENDCiAxOiBDCiAgICBCQ0QgCiAwOiBCQwogMTogQwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFCQ0QKTm8gbWF0Y2gKICAgIENBRApObyBtYXRjaAogICAgQkFEICAgIApObyBtYXRjaAoKLyg/Oig/MSl8QikoQSgqQUNDRVBUKVhYfEMpRC8KICAgIEFBRAogMDogQUEKIDE6IEEKICAgIEFDRAogMDogQUNECiAxOiBDCiAgICBCQUQKIDA6IEJBCiAxOiBBCiAgICBCQ0QKIDA6IEJDRAogMTogQwogICAgQkFYICAKIDA6IEJBCiAxOiBBClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUNYCk5vIG1hdGNoCiAgICBBQkMgICAKTm8gbWF0Y2gKCi8oPyhERUZJTkUpKEEpKUIoPzEpQy8KICAgIEJBQwogMDogQkFDCgovKD8oREVGSU5FKSgoQSlcMikpQig/MSlDLwogICAgQkFBQwogMDogQkFBQwoKLyg/PHBuPiBcKCAoIFteKCldKysgfCAoPyZwbikgKSogXCkgKS94CiAgICAoYWIoY2QpZWYpCiAwOiAoYWIoY2QpZWYpCiAxOiAoYWIoY2QpZWYpCiAyOiBlZgoKL14oPz1hKCpTS0lQKWJ8YWMpLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFjCk5vIG1hdGNoCiAgICAKL14oPz1hKCpQUlVORSliKS8KICAgIGFiICAKIDA6IApcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBhYwpObyBtYXRjaAoKL14oPz1hKCpBQ0NFUFQpYikvCiAgICBhYwogMDogCgovKD8+YVxLYikvCiAgICBhYgogMDogYgoKLygoPz5hXEtiKSkvCiAgICBhYgogMDogYgogMTogYWIKCi8oYVxLYikvCiAgICBhYgogMDogYgogMTogYWIKICAgIAovXmFcS2N6fGFjLwogICAgYWMKIDA6IGFjCiAgICAKLyg/PmFcS2J6fGFiKS8KICAgIGFiIAogMDogYWIKCi9eKD8mdCkoPyhERUZJTkUpKD88dD5hXEtiKSkkLwogICAgYWIKIDA6IGIKCi9eKFteKCldfFwoKD8xKSpcKSkqJC8KICAgIGEoYiljCiAwOiBhKGIpYwogMTogYwogICAgYShiKGMpZCllIAogMDogYShiKGMpZCllCiAxOiBlCgovKD9QPEwxPig/UDxMMj4wKSg/UD5MMSl8KD9QPkwyKSkvCiAgICAwCiAwOiAwCiAxOiAwCiAgICAwMAogMDogMDAKIDE6IDAwCiAyOiAwCiAgICAwMDAwICAKIDA6IDAwMDAKIDE6IDAwMDAKIDI6IDAKCi8oP1A8TDE+KD9QPEwyPjApfCg/UD5MMikoP1A+TDEpKS8KICAgIDAKIDA6IDAKIDE6IDAKIDI6IDAKICAgIDAwCiAwOiAwCiAxOiAwCiAyOiAwCiAgICAwMDAwICAKIDA6IDAKIDE6IDAKIDI6IDAKCiMgVGhpcyBvbmUgZG9lcyBmYWlsLCBhcyBleHBlY3RlZCwgaW4gUGVybC4gSXQgbmVlZHMgdGhlIGNvbXBsZXggaXRlbSBhdCB0aGUKIyBlbmQgb2YgdGhlIHBhdHRlcm4uIEEgc2luZ2xlIGxldHRlciBpbnN0ZWFkIG9mIChCfEQpIG1ha2VzIGl0IG5vdCBmYWlsLCB3aGljaAojIEkgdGhpbmsgaXMgYSBQZXJsIGJ1Zy4KCi9BKCpDT01NSVQpKEJ8RCkvClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUNBQlgKTm8gbWF0Y2gKCiMgQ2hlY2sgdGhlIHVzZSBvZiBuYW1lcyBmb3IgZmFpbHVyZQoKL14oQSgqUFJVTkU6QSlCfEMoKlBSVU5FOkIpRCkvbWFyawpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFDCk5vIG1hdGNoLCBtYXJrID0gQQogICAgQ0IgICAgCk5vIG1hdGNoLCBtYXJrID0gQgogICAgCi8oKk1BUks6QSkoKlNLSVA6QikoQ3xYKS9tYXJrCiAgICBDCiAwOiBDCiAxOiBDCk1LOiBBClw9IEV4cGVjdCBubyBtYXRjaAogICAgRApObyBtYXRjaCwgbWFyayA9IEEKICAgICAKL14oQSgqVEhFTjpBKUJ8QygqVEhFTjpCKUQpL21hcmsKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBDQiAgICAKTm8gbWF0Y2gsIG1hcmsgPSBCCgovXig/OkEoKlRIRU46QSlCfEMoKlRIRU46QilEKS9tYXJrClw9IEV4cGVjdCBubyBtYXRjaAogICAgQ0IgICAgCk5vIG1hdGNoLCBtYXJrID0gQgogICAgCi9eKD8+QSgqVEhFTjpBKUJ8QygqVEhFTjpCKUQpL21hcmsKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBDQiAgICAKTm8gbWF0Y2gsIG1hcmsgPSBCCiAgICAKIyBUaGlzIHNob3VsZCBzdWNjZWVkLCBhcyB0aGUgc2tpcCBjYXVzZXMgYnVtcCB0byBvZmZzZXQgMSAodGhlIG1hcmspLiBOb3RlCiMgdGhhdCB3ZSBoYXZlIHRvIGhhdmUgc29tZXRoaW5nIGNvbXBsaWNhdGVkIHN1Y2ggYXMgKEJ8WikgYXQgdGhlIGVuZCBiZWNhdXNlLAojIGZvciBQZXJsLCBhIHNpbXBsZSBjaGFyYWN0ZXIgc29tZWhvdyBjYXVzZXMgYW4gdW53YW50ZWQgb3B0aW1pemF0aW9uIHRvIG1lc3MKIyB3aXRoIHRoZSBoYW5kbGluZyBvZiBiYWNrdHJhY2tpbmcgdmVyYnMuCgovQSgqTUFSSzpBKUErKCpTS0lQOkEpKEJ8WikgfCBBQy94LG1hcmsKICAgIEFBQUMKIDA6IEFDCiAgICAKIyBUZXN0IHNraXBwaW5nIG92ZXIgYSBub24tbWF0Y2hpbmcgbWFyay4KCi9BKCpNQVJLOkEpQSsoKk1BUks6QikoKlNLSVA6QSkoQnxaKSB8IEFDL3gsbWFyawogICAgQUFBQwogMDogQUMKICAgIAojIENoZWNrIHNob3J0aGFuZCBmb3IgTUFSSy4KCi9BKCo6QSlBKygqU0tJUDpBKShCfFopIHwgQUMveCxtYXJrCiAgICBBQUFDCiAwOiBBQwoKLygqOkEpQSsoKlNLSVA6QSkoQnxaKS9tYXJrClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUFBQwpObyBtYXRjaCwgbWFyayA9IEEKCiMgVGhpcyBzaG91bGQgc3VjY2VlZCwgYXMgYSBub24tZXhpc3RlbnQgc2tpcCBuYW1lIGRpc2FibGVzIHRoZSBza2lwLgoKL0EoKk1BUks6QSlBKygqU0tJUDpCKShCfFopIHwgQUMveCxtYXJrCiAgICBBQUFDCiAwOiBBQwoKL0EoKk1BUks6QSlBKygqU0tJUDpCKShCfFopIHwgQUMoKjpCKS94LG1hcmsKICAgIEFBQUMKIDA6IEFDCk1LOiBCCgojIENPTU1JVCBhdCB0aGUgc3RhcnQgb2YgYSBwYXR0ZXJuIHNob3VsZCBhY3QgbGlrZSBhbiBhbmNob3IuIEFnYWluLCBob3dldmVyLAojIHdlIG5lZWQgdGhlIGNvbXBsaWNhdGlvbiBmb3IgUGVybC4KCi8oKkNPTU1JVCkoQXxQKShCfFApKEN8UCkvCiAgICBBQkNERUZHCiAwOiBBQkMKIDE6IEEKIDI6IEIKIDM6IEMKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBERUZHQUJDICAKTm8gbWF0Y2gKCiMgQ09NTUlUIGluc2lkZSBhbiBhdG9taWMgZ3JvdXAgY2FuJ3Qgc3RvcCBiYWNrdHJhY2tpbmcgb3ZlciB0aGUgZ3JvdXAuCgovKFx3KykoPz5iKCpDT01NSVQpKVx3ezJ9LwogICAgYWJiYgogMDogYWJiYgogMTogYQoKLyhcdyspYigqQ09NTUlUKVx3ezJ9LwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFiYmIKTm8gbWF0Y2gKCiMgQ2hlY2sgb3BlbmluZyBwYXJlbnMgaW4gY29tbWVudCB3aGVuIHNlZWtpbmcgZm9yd2FyZCByZWZlcmVuY2UuCgovKD8mdCkoPyMoKSg/KERFRklORSkoPzx0PmEpKS8KICAgIGJhYwogMDogYQoKIyBDT01NSVQgc2hvdWxkIG92ZXJyaWRlIFRIRU4uCgovKD8+KCpDT01NSVQpKD8+eWVzfG5vKSgqVEhFTikoKkYpKT8vClw9IEV4cGVjdCBubyBtYXRjaAogIHllcwpObyBtYXRjaAoKLyg/PigqQ09NTUlUKSh5ZXN8bm8pKCpUSEVOKSgqRikpPy8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgeWVzCk5vIG1hdGNoCgovYj8oKlNLSVApYy8KICAgIGJjCiAwOiBiYwogICAgYWJjCiAwOiBiYwogICAKLygqU0tJUCliYy8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhCk5vIG1hdGNoCgovKCpTS0lQKWIvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYSAKTm8gbWF0Y2gKCi8oP1A8YWJuPig/UD1hYm4peHh4fCkrLwogICAgeHh4CiAwOiAKIDE6IAoKLyg/aTooW15iXSkpKD8xKS8KICAgIGFhCiAwOiBhYQogMTogYQogICAgYUEgICAgIAogMDogYUEKIDE6IGEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYgpObyBtYXRjaAogICAgYUIKTm8gbWF0Y2gKICAgIEJhCk5vIG1hdGNoCiAgICBiYQpObyBtYXRjaAoKL14oPyZ0KSorKD8oREVGSU5FKSg/PHQ+YSkpXHckLwogICAgYWFhYWFhWAogMDogYWFhYWFhWApcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBhYWFhYWEgCk5vIG1hdGNoCgovXig/JnQpKig/KERFRklORSkoPzx0PmEpKVx3JC8KICAgIGFhYWFhYVgKIDA6IGFhYWFhYVgKICAgIGFhYWFhYSAKIDA6IGFhYWFhYQoKL14oYSkqKyhcdykvCiAgICBhYWFhWAogMDogYWFhYVgKIDE6IGEKIDI6IFgKICAgIFlaIAogMDogWQogMTogPHVuc2V0PgogMjogWQpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICBhYWFhCk5vIG1hdGNoCgovXig/OmEpKisoXHcpLwogICAgYWFhYVgKIDA6IGFhYWFYCiAxOiBYCiAgICBZWiAKIDA6IFkKIDE6IFkKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgYWFhYQpObyBtYXRjaAoKL14oYSkrKyhcdykvCiAgICBhYWFhWAogMDogYWFhYVgKIDE6IGEKIDI6IFgKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgYWFhYQpObyBtYXRjaAogICAgWVogCk5vIG1hdGNoCgovXig/OmEpKysoXHcpLwogICAgYWFhYVgKIDA6IGFhYWFYCiAxOiBYClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFhYWEKTm8gbWF0Y2gKICAgIFlaIApObyBtYXRjaAoKL14oYSk/KyhcdykvCiAgICBhYWFhWAogMDogYWEKIDE6IGEKIDI6IGEKICAgIFlaIAogMDogWQogMTogPHVuc2V0PgogMjogWQoKL14oPzphKT8rKFx3KS8KICAgIGFhYWFYCiAwOiBhYQogMTogYQogICAgWVogCiAwOiBZCiAxOiBZCgovXihhKXsyLH0rKFx3KS8KICAgIGFhYWFYCiAwOiBhYWFhWAogMTogYQogMjogWApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYQpObyBtYXRjaAogICAgWVogCk5vIG1hdGNoCgovXig/OmEpezIsfSsoXHcpLwogICAgYWFhYVgKIDA6IGFhYWFYCiAxOiBYClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhCk5vIG1hdGNoCiAgICBZWiAKTm8gbWF0Y2gKCi8oYXwpKig/MSliLwogICAgYgogMDogYgogMTogCiAgICBhYgogMDogYWIKIDE6IAogICAgYWFiICAKIDA6IGFhYgogMTogCgovKGEpKysoPzEpYi8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYiAKTm8gbWF0Y2gKICAgIGFhYgpObyBtYXRjaAoKLyhhKSorKD8xKWIvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWIKTm8gbWF0Y2gKICAgIGFhYiAgCk5vIG1hdGNoCgovKD8xKSg/OihiKSl7MH0vCiAgICBiCiAwOiBiCgovKGZvbyAoIFwoICgoPzooPz4gW14oKV0rICl8KD8yKSkqKSBcKSApICkveAogICAgZm9vKGJhcihiYXopK2Jheihib3ApKQogMDogZm9vKGJhcihiYXopK2Jheihib3ApKQogMTogZm9vKGJhcihiYXopK2Jheihib3ApKQogMjogKGJhcihiYXopK2Jheihib3ApKQogMzogYmFyKGJheikrYmF6KGJvcCkKCi8oQSAoQXxCKCpBQ0NFUFQpfEMpIEQpKEUpL3gKICAgIEFCCiAwOiBBQgogMTogQUIKIDI6IEIKCi9cQS4qPyhhfGJjKS8KICAgIGJhCiAwOiBiYQogMTogYQoKL1xBLio/KD86YXxiYykrKy8KICAgIGJhCiAwOiBiYQoKL1xBLio/KGF8YmMpKysvCiAgICBiYQogMDogYmEKIDE6IGEKCi9cQS4qPyg/OmF8YmN8ZCkvCiAgICBiYQogMDogYmEKCi8oPzooYikpKysvCiAgICBiZWV0bGUKIDA6IGIKIDE6IGIKCi8oPyg/PShhKCpBQ0NFUFQpeikpYSkvCiAgICBhCiAwOiBhCiAxOiBhCgovXihhKSg/MSkrYWIvCiAgICBhYWFhYgogMDogYWFhYWIKIDE6IGEKICAgIAovXihhKSg/MSkrK2FiLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYWFiCk5vIG1hdGNoCgovXig/PWEoKjpNKSlhWi9tYXJrCiAgICBhWmJjCiAwOiBhWgpNSzogTQoKL14oPyEoKjpNKWIpYVovbWFyawogICAgYVpiYwogMDogYVoKCi8oPyhERUZJTkUpKGEpKT9iKD8xKS8KICAgIGJhY2tnYW1tb24KIDA6IGJhCgovXlxOKy8KICAgIGFiY1xuZGVmCiAwOiBhYmMKICAgIAovXlxOezEsfS8KICAgIGFiY1xuZGVmIAogMDogYWJjCgovKD8oUilhK3woP1IpYikvCiAgICBhYWFhYmNkZQogMDogYWFhYWIKCi8oPyhSKWErfCgoP1IpKWIpLwogICAgYWFhYWJjZGUKIDA6IGFhYWFiCiAxOiBhYWFhCgovKCg/KFIpYSt8KD8xKWIpKS8KICAgIGFhYWFiY2RlCiAwOiBhYWFhYgogMTogYWFhYWIKCi8oKD8oUjEpYSt8KD8xKWIpKS8KICAgIGFhYWFiY2RlCiAwOiBhYWFhYgogMTogYWFhYWIKICAgIAovKCg/KFIpYXwoPzEpKSkqLwogICAgYWFhCiAwOiBhYWEKIDE6IGEKCi8oKD8oUilhfCg/MSkpKSsvCiAgICBhYWEgCiAwOiBhYWEKIDE6IGEKCi9hKCo6YW55IApuYW1lKS9tYXJrCiAgICBhYmMKIDA6IGEKTUs6IGFueSBceDBhbmFtZQogICAgCi8oPz4oPyZ0KWN8KD8mdCkpKD8oREVGSU5FKSg/PHQ+YXxiKCpQUlVORSljKSkvCiAgICBhCiAwOiBhCiAgICBiYQogMDogYQogICAgYmJhIAogMDogYQogICAgCiMgQ2hlY2tpbmcgcmV2aXNlZCAoKlRIRU4pIGhhbmRsaW5nLgoKIyBDYXB0dXJlCgovXi4qPyAoYSgqVEhFTiliKSBjL3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWJjCk5vIG1hdGNoCgovXi4qPyAoYSgqVEhFTilifCgqRikpIGMveAogICAgYWFiYwogMDogYWFiYwogMTogYWIKCi9eLio/ICggKGEoKlRIRU4pYikgfCAoKkYpICkgYy94CiAgICBhYWJjCiAwOiBhYWJjCiAxOiBhYgogMjogYWIKCi9eLio/ICggKGEoKlRIRU4pYikgKSBjL3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWJjCk5vIG1hdGNoCgojIE5vbi1jYXB0dXJlCgovXi4qPyAoPzphKCpUSEVOKWIpIGMveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYmMKTm8gbWF0Y2gKCi9eLio/ICg/OmEoKlRIRU4pYnwoKkYpKSBjL3gKICAgIGFhYmMKIDA6IGFhYmMKCi9eLio/ICg/OiAoPzphKCpUSEVOKWIpIHwgKCpGKSApIGMveAogICAgYWFiYwogMDogYWFiYwoKL14uKj8gKD86ICg/OmEoKlRIRU4pYikgKSBjL3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWJjCk5vIG1hdGNoCgojIEF0b21pYwoKL14uKj8gKD8+YSgqVEhFTiliKSBjL3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWJjCk5vIG1hdGNoCgovXi4qPyAoPz5hKCpUSEVOKWJ8KCpGKSkgYy94CiAgICBhYWJjCiAwOiBhYWJjCgovXi4qPyAoPz4gKD8+YSgqVEhFTiliKSB8ICgqRikgKSBjL3gKICAgIGFhYmMKIDA6IGFhYmMKCi9eLio/ICg/PiAoPz5hKCpUSEVOKWIpICkgYy94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFiYwpObyBtYXRjaAoKIyBQb3NzZXNzaXZlIGNhcHR1cmUKCi9eLio/IChhKCpUSEVOKWIpKysgYy94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFiYwpObyBtYXRjaAoKL14uKj8gKGEoKlRIRU4pYnwoKkYpKSsrIGMveAogICAgYWFiYwogMDogYWFiYwogMTogYWIKCi9eLio/ICggKGEoKlRIRU4pYikrKyB8ICgqRikgKSsrIGMveAogICAgYWFiYwogMDogYWFiYwogMTogYWIKIDI6IGFiCgovXi4qPyAoIChhKCpUSEVOKWIpKysgKSsrIGMveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYmMKTm8gbWF0Y2gKCiMgUG9zc2Vzc2l2ZSBub24tY2FwdHVyZQoKL14uKj8gKD86YSgqVEhFTiliKSsrIGMveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYmMKTm8gbWF0Y2gKCi9eLio/ICg/OmEoKlRIRU4pYnwoKkYpKSsrIGMveAogICAgYWFiYwogMDogYWFiYwoKL14uKj8gKD86ICg/OmEoKlRIRU4pYikrKyB8ICgqRikgKSsrIGMveAogICAgYWFiYwogMDogYWFiYwoKL14uKj8gKD86ICg/OmEoKlRIRU4pYikrKyApKysgYy94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFiYwpObyBtYXRjaAogICAgCiMgQ29uZGl0aW9uIGFzc2VydGlvbgoKL14oPyg/PWEoKlRIRU4pYilhYnxhYykvCiAgICBhYwogMDogYWMKIAojIENvbmRpdGlvbgoKL14uKj8oPyg/PWEpYXxiKCpUSEVOKWMpLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJhCk5vIG1hdGNoCgovXi4qPyg/Oig/KD89YSlhfGIoKlRIRU4pYyl8ZCkvCiAgICBiYQogMDogYmEKCi9eLio/KD8oPz1hKWEoKlRIRU4pYnxjKS8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYwpObyBtYXRjaAoKIyBBc3NlcnRpb24KCi9eLiooPz1hKCpUSEVOKWIpLwogICAgYWFiYwogMDogYQoKIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKLyg/PmEoKjptKSkvaW1zeCxtYXJrCiAgICBhCiAwOiBhCk1LOiBtCgovKD8+KGEpKCo6bSkpL2ltc3gsbWFyawogICAgYQogMDogYQogMTogYQpNSzogbQoKLyg/PD1hKCpBQ0NFUFQpYiljLwogICAgeGFjZAogMDogYwoKLyg/PD0oYSgqQUNDRVBUKWIpKWMvCiAgICB4YWNkCiAwOiBjCiAxOiBhCgovKD88PShhKCpDT01NSVQpYikpYy8KICAgIHhhYmNkCiAwOiBjCiAxOiBhYgpcPSBFeHBlY3Qgbm8gbWF0Y2ggCiAgICB4YWNkCk5vIG1hdGNoCiAgICAKLyg/PCFhKCpGQUlMKWIpYy8KICAgIHhjZAogMDogYwogICAgYWNkIAogMDogYwoKLyg/PD1hKCo6TiliKWMvbWFyawogICAgeGFiY2QKIDA6IGMKTUs6IE4KICAgIAovKD88PWEoKlBSVU5FKWIpYy8KICAgIHhhYmNkIAogMDogYwoKLyg/PD1hKCpTS0lQKWIpYy8KICAgIHhhYmNkIAogMDogYwoKLyg/PD1hKCpUSEVOKWIpYy8KICAgIHhhYmNkIAogMDogYwoKLyhhKSg/Mil7Mn0oLikvCiAgICBhYmNkCiAwOiBhYmNkCiAxOiBhCiAyOiBkCgovKCpNQVJLOkEpKCpQUlVORTpCKShDfFgpL21hcmsKICAgIEMKIDA6IEMKIDE6IEMKTUs6IEIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBEIApObyBtYXRjaCwgbWFyayA9IEIKCi8oKk1BUks6QSkoKlBSVU5FOkIpKEN8WCkvbWFyawogICAgQwogMDogQwogMTogQwpNSzogQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEQgCk5vIG1hdGNoLCBtYXJrID0gQgoKLygqTUFSSzpBKSgqVEhFTjpCKShDfFgpL21hcmsKICAgIEMKIDA6IEMKIDE6IEMKTUs6IEIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBEIApObyBtYXRjaCwgbWFyayA9IEIKCi8oKk1BUks6QSkoKlRIRU46QikoQ3xYKS9tYXJrLG5vX3N0YXJ0X29wdGltaXplCiAgICBDCiAwOiBDCiAxOiBDCk1LOiBCClw9IEV4cGVjdCBubyBtYXRjaAogICAgRCAKTm8gbWF0Y2gsIG1hcmsgPSBCCgovKCpNQVJLOkEpKCpUSEVOOkIpKEN8WCkvbWFyawogICAgQwogMDogQwogMTogQwpNSzogQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEQgCk5vIG1hdGNoLCBtYXJrID0gQgoKIyBUaGlzIHNob3VsZCBmYWlsLCBhcyB0aGUgc2tpcCBjYXVzZXMgYSBidW1wIHRvIG9mZnNldCAzICh0aGUgc2tpcCkuCgovQSgqTUFSSzpBKUErKCpTS0lQKShCfFopIHwgQUMveCxtYXJrClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUFBQwpObyBtYXRjaCwgbWFyayA9IEEKCiMgU2FtZSAKCi9BKCpNQVJLOkEpQSsoKk1BUks6QikoKlNLSVA6QikoQnxaKSB8IEFDL3gsbWFyawpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFBQUMKTm8gbWF0Y2gsIG1hcmsgPSBCCgovQSgqOkEpQSsoKlNLSVApKEJ8WikgfCBBQy94LG1hcmsKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBQUFDCk5vIG1hdGNoLCBtYXJrID0gQQoKIyBUaGlzIHNob3VsZCBmYWlsLCBhcyBhIG51bGwgbmFtZSBpcyB0aGUgc2FtZSBhcyBubyBuYW1lLgoKL0EoKk1BUks6QSlBKygqU0tJUDopKEJ8WikgfCBBQy94LG1hcmsKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBQUFDCk5vIG1hdGNoLCBtYXJrID0gQQoKIyBBIGNoZWNrIG9uIHdoYXQgaGFwcGVucyBhZnRlciBoaXR0aW5nIGEgbWFyayBhbmQgdGhlbSBidW1waW5nIGFsb25nIHRvCiMgc29tZXRoaW5nIHRoYXQgZG9lcyBub3QgZXZlbiBzdGFydC4gUGVybCByZXBvcnRzIHRhZ3MgYWZ0ZXIgdGhlIGZhaWx1cmVzCiMgaGVyZSwgdGhvdWdoIGl0IGRvZXMgbm90IHdoZW4gdGhlIGluZGl2aWR1YWwgbGV0dGVycyBhcmUgbWFkZSBpbnRvIHNvbWV0aGluZwojIG1vcmUgY29tcGxpY2F0ZWQuCgovQSgqOkEpQnxYWCgqOkIpWS9tYXJrCiAgICBBQUJDCiAwOiBBQgpNSzogQQogICAgWFhZWiAKIDA6IFhYWQpNSzogQgpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIFhBUVEgIApObyBtYXRjaCwgbWFyayA9IEEKICAgIFhBUVFYWlogIApObyBtYXRjaCwgbWFyayA9IEEKICAgIEFYUVFRIApObyBtYXRjaCwgbWFyayA9IEEKICAgIEFYWFFRUSAKTm8gbWF0Y2gsIG1hcmsgPSBCCiAgICAKL14oQSgqVEhFTjpBKUJ8QygqVEhFTjpCKUQpL21hcmsKICAgIEFCCiAwOiBBQgogMTogQUIKTUs6IEEKICAgIENECiAwOiBDRAogMTogQ0QKTUs6IEIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBBQwpObyBtYXRjaCwgbWFyayA9IEEKICAgIENCICAgIApObyBtYXRjaCwgbWFyayA9IEIKICAgIAovXihBKCpQUlVORTpBKUJ8QygqUFJVTkU6QilEKS9tYXJrCiAgICBBQgogMDogQUIKIDE6IEFCCk1LOiBBCiAgICBDRAogMDogQ0QKIDE6IENECk1LOiBCClw9IEV4cGVjdCBubyBtYXRjaAogICAgQUMKTm8gbWF0Y2gsIG1hcmsgPSBBCiAgICBDQiAgICAKTm8gbWF0Y2gsIG1hcmsgPSBCCiAgICAKIyBBbiBlbXB0eSBuYW1lIGRvZXMgbm90IHBhc3MgYmFjayBhbiBlbXB0eSBzdHJpbmcuIEl0IGlzIHRoZSBzYW1lIGFzIGlmIG5vCiMgbmFtZSB3ZXJlIGdpdmVuLgoKL14oQSgqUFJVTkU6KUJ8QygqUFJVTkU6QilEKS9tYXJrCiAgICBBQgogMDogQUIKIDE6IEFCCiAgICBDRCAKIDA6IENECiAxOiBDRApNSzogQgoKIyBQUlVORSBnb2VzIHRvIG5leHQgYnVtcGFsb25nOyBDT01NSVQgZG9lcyBub3QuCiAgICAKL0EoKlBSVU5FOkEpQi9tYXJrCiAgICBBQ0FCCiAwOiBBQgpNSzogQQoKIyBNYXJrIG5hbWVzIGNhbiBiZSBkdXBsaWNhdGVkLgoKL0EoKjpBKUJ8WCgqOkEpWS9tYXJrCiAgICBBQUJDCiAwOiBBQgpNSzogQQogICAgWFhZWiAKIDA6IFhZCk1LOiBBCiAgICAKL2IoKjptKWZ8YSgqOm4pdy9tYXJrCiAgICBhdyAKIDA6IGF3Ck1LOiBuClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFiYwpObyBtYXRjaCwgbWFyayA9IG0KCi9iKCo6bSlmfGF3L21hcmsKICAgIGFiYXcKIDA6IGF3Clw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFiYwpObyBtYXRjaCwgbWFyayA9IG0KICAgIGFiYXggCk5vIG1hdGNoLCBtYXJrID0gbQoKL0EoKk1BUks6QSlBKygqU0tJUDpCKShCfFopIHwgQUFDL3gsbWFyawogICAgQUFBQwogMDogQUFDCgovYSgqUFJVTkU6WCliY3xxcS9tYXJrLG5vX3N0YXJ0X29wdGltaXplClw9IEV4cGVjdCBubyBtYXRjaAogICAgYXh5Ck5vIG1hdGNoLCBtYXJrID0gWAoKL2EoKlRIRU46WCliY3xxcS9tYXJrLG5vX3N0YXJ0X29wdGltaXplClw9IEV4cGVjdCBubyBtYXRjaAogICAgYXh5Ck5vIG1hdGNoLCBtYXJrID0gWAoKLyg/PWEoKk1BUks6QSliKS4ueC9tYXJrCiAgICBhYnh5CiAwOiBhYngKTUs6IEEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYnBxICAKTm8gbWF0Y2gKCi8oPz1hKCpNQVJLOkEpYikuLigqOlkpeC9tYXJrCiAgICBhYnh5CiAwOiBhYngKTUs6IFkKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYnBxICAKTm8gbWF0Y2gKCi8oPz1hKCpQUlVORTpBKWIpLi54L21hcmsKICAgIGFieHkKIDA6IGFieApNSzogQQpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFicHEgIApObyBtYXRjaAoKLyg/PWEoKlBSVU5FOkEpYikuLigqOlkpeC9tYXJrCiAgICBhYnh5CiAwOiBhYngKTUs6IFkKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYnBxICAKTm8gbWF0Y2gKCi8oPz1hKCpUSEVOOkEpYikuLngvbWFyawogICAgYWJ4eQogMDogYWJ4Ck1LOiBBClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJwcSAgCk5vIG1hdGNoCgovKD89YSgqVEhFTjpBKWIpLi4oKjpZKXgvbWFyawogICAgYWJ4eQogMDogYWJ4Ck1LOiBZClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJwcSAgCk5vIG1hdGNoCgovKGFub3RoZXIpPyhcMT8pdGVzdC8KICAgIGhlbGxvIHdvcmxkIHRlc3QKIDA6IHRlc3QKIDE6IDx1bnNldD4KIDI6IAoKLyhhbm90aGVyKT8oXDErKXRlc3QvClw9IEV4cGVjdCBubyBtYXRjaAogICAgaGVsbG8gd29ybGQgdGVzdApObyBtYXRjaAoKLyhhKCpDT01NSVQpYil7MH1hKD8xKXxhYWMvCiAgICBhYWMKIDA6IGFhYwoKLygoPzphPykqKSpjLwogICAgYWFjICAgCiAwOiBhYWMKIDE6IAoKLygoPz5hPykqKSpjLwogICAgYWFjICAgCiAwOiBhYWMKIDE6IAoKLyg/Pi4qP2EpKD88PWJhKS8KICAgIGFiYQogMDogYmEKCi8oPzouKj9hKSg/PD1iYSkvCiAgICBhYmEKIDA6IGFiYQoKLyg/Pi4qP2EpYi9zCiAgICBhYWIKIDA6IGFiCgovKD8+Lio/YSliLwogICAgYWFiCiAwOiBhYgoKLyg/Pl5hKWIvcwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhYgpObyBtYXRjaAoKLyg/Pi4qPykoPzw9KGFiY2QpfCh3eHl6KSkvCiAgICBhbHBoYWJldGFiY2QKIDA6IAogMTogYWJjZAogICAgZW5kaW5nd3h5eiAKIDA6IAogMTogPHVuc2V0PgogMjogd3h5egoKLyg/Pi4qKSg/PD0oYWJjZCl8KHd4eXopKS8KICAgIGFscGhhYmV0YWJjZAogMDogYWxwaGFiZXRhYmNkCiAxOiBhYmNkCiAgICBlbmRpbmd3eHl6IAogMDogZW5kaW5nd3h5egogMTogPHVuc2V0PgogMjogd3h5egoKIig/Pi4qKWZvbyIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNkZm9veHl6Ck5vIG1hdGNoCiAgICAKIig/Pi4qPylmb28iCiAgICBhYmNkZm9veHl6CiAwOiBmb28KCi8oPzooYSgqUFJVTkUpYikpezB9KD86KD8xKXxhYykvCiAgICBhYwogMDogYWMKICAgIAovKD86KGEoKlNLSVApYikpezB9KD86KD8xKXxhYykvCiAgICBhYyAKIDA6IGFjCgovKD88PSgqU0tJUClhYylhLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFhCk5vIG1hdGNoCgovQSgqTUFSSzpBKUErKCpTS0lQOkIpKEJ8WikgfCBBQy94LG1hcmsKICAgIEFBQUMKIDA6IEFDCgovYSgqU0tJUDptKXh8YWMoKjpuKSgqU0tJUDpuKWR8YWMvbWFyawogICAgYWNhY2QKIDA6IGFjZApNSzogbgoKL0EoKlNLSVA6bSl4fEEoKlNLSVA6bil4fEFCL21hcmsKICAgIEFCCiAwOiBBQgoKLygoKlNLSVA6cilkKXswfWEoKlNLSVA6bSl4fGFjKCo6bil8YWMvbWFyawogICAgYWNhY2QKIDA6IGFjCk1LOiBuCgojIFRlc3RzIHRoYXQgdHJ5IHRvIGZpZ3VyZSBvdXQgaG93IFBlcmwgd29ya3MuIE15IGh5cG90aGVzaXMgaXMgdGhhdCB0aGUgZmlyc3QKIyB2ZXJiIHRoYXQgaXMgYmFja3RyYWNrZWQgb250byBpcyB0aGUgb25lIHRoYXQgYWN0cy4gVGhpcyBzZWVtcyB0byBiZSB0aGUgY2FzZQojIGFsbW9zdCBhbGwgdGhlIHRpbWUsIGJ1dCB0aGVyZSBpcyBvbmUgZXhjZXB0aW9uIHRoYXQgaXMgcGVyaGFwcyBhIGJ1Zy4KCiMgVGhpcyBtYXRjaGVzICJhYWFhYyI7IGVhY2ggUFJVTkUgYWR2YW5jZXMgb25lIGNoYXJhY3RlciB1bnRpbCB0aGUgc3ViamVjdCBubwojIGxvbmdlciBzdGFydHMgd2l0aCA1ICdhJ3MuCgovYWFhYWEoKlBSVU5FKWJ8YStjLwogICAgYWFhYWFhYwogMDogYWFhYWMKCiMgUHV0dGluZyBTS0lQIGluIGZyb250IG9mIFBSVU5FIG1ha2VzIG5vIGRpZmZlcmVuY2UsIGFzIGl0IGlzIG5ldmVyCiMgYmFja3RyYWNrZWQgb250bywgd2hldGhlciBvciBub3QgaXQgaGFzIGEgbGFiZWwuCgovYWFhYWEoKlNLSVApKCpQUlVORSlifGErYy8KICAgIGFhYWFhYWMKIDA6IGFhYWFjCgovYWFhYWEoKlNLSVA6TikoKlBSVU5FKWJ8YStjLwogICAgYWFhYWFhYwogMDogYWFhYWMKCi9hYWFhKCo6TilhKCpTS0lQOk4pKCpQUlVORSlifGErYy8KICAgIGFhYWFhYWMKIDA6IGFhYWFjCgojIFB1dHRpbmcgVEhFTiBpbiBmcm9udCBtYWtlcyBubyBkaWZmZXJlbmNlLgogICAgCi9hYWFhYSgqVEhFTikoKlBSVU5FKWJ8YStjLwogICAgYWFhYWFhYwogMDogYWFhYWMKIAojIEhvd2V2ZXIsIHB1dHRpbmcgQ09NTUlUIGluIGZyb250IG9mIHRoZSBwcnVuZSBjaGFuZ2VzIGl0IHRvICJubyBtYXRjaCIuIEkgCiMgdGhpbmsgdGhpcyBpcyBpbmNvbnNpc3RlbnQgYW5kIHBvc3NpYmx5IGEgYnVnLiBGb3IgdGhlIG1vbWVudCwgcnVubmluZyB0aGlzCiMgdGVzdCBpcyBtb3ZlZCBvdXQgb2YgdGhlIFBlcmwtY29tcGF0aWJsZSBmaWxlLiAKCi9hYWFhYSgqQ09NTUlUKSgqUFJVTkUpYnxhK2MvCiAgICAKIyBPSywgbGV0cyBwbGF5IHRoZSBzYW1lIGdhbWUgYWdhaW4gdXNpbmcgU0tJUCBpbnN0ZWFkIG9mIFBSVU5FLgoKIyBUaGlzIG1hdGNoZXMgImFjIiBiZWNhdXNlIFNLSVAgZm9yY2VzIHRoZSBuZXh0IG1hdGNoIHRvIHN0YXJ0IG9uIHRoZQojIHNpeHRoICJhIi4gCgovYWFhYWEoKlNLSVApYnxhK2MvCiAgICBhYWFhYWFjCiAwOiBhYwogCiMgUHV0dGluZyBQUlVORSBpbiBmcm9udCBtYWtlcyBubyBkaWZmZXJlbmNlLiAKCi9hYWFhYSgqUFJVTkUpKCpTS0lQKWJ8YStjLwogICAgYWFhYWFhYwogMDogYWMKCiMgUHV0dGluZyBUSEVOIGluIGZyb250IG1ha2VzIG5vIGRpZmZlcmVuY2UuIAoKL2FhYWFhKCpUSEVOKSgqU0tJUClifGErYy8KICAgIGFhYWFhYWMKIDA6IGFjCgojIEluIHRoaXMgY2FzZSwgbmVpdGhlciBkb2VzIENPTU1JVC4gVGhpcyBzdGlsbCBtYXRjaGVzICJhYyIuIAoKL2FhYWFhKCpDT01NSVQpKCpTS0lQKWJ8YStjLwogICAgYWFhYWFhYwogMDogYWMKICAgIAojIFRoaXMgZ2l2ZXMgIm5vIG1hdGNoIiwgYXMgZXhwZWN0ZWQuIAoKL2FhYWFhKCpDT01NSVQpYnxhK2MvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhYWFhYwpObyBtYXRjaAoKIyAtLS0tIFRlc3RzIHVzaW5nIFRIRU4gLS0tLQoKIyBUaGlzIG1hdGNoZXMgImFhYWFhYWMiLCBhcyBleHBlY3RlZC4gCgovYWFhYWEoKlRIRU4pYnxhK2MvCiAgICBhYWFhYWFjCiAwOiBhYWFhYWFjCgojIFB1dHRpbmcgU0tJUCBpbiBmcm9udCBtYWtlcyBubyBkaWZmZXJlbmNlLiAKCi9hYWFhYSgqU0tJUCkoKlRIRU4pYnxhK2MvCiAgICBhYWFhYWFjCiAwOiBhYWFhYWFjCiAgICAKIyBQdXR0aW5nIFBSVU5FIGluIGZyb250IG1ha2VzIG5vIGRpZmZlcmVuY2UuIAoKL2FhYWFhKCpQUlVORSkoKlRIRU4pYnxhK2MvCiAgICBhYWFhYWFjCiAwOiBhYWFhYWFjCiAgICAKIyBQdXR0aW5nIENPTU1JVCBpbiBmcm9udCBtYWtlcyBubyBkaWZmZXJlbmNlLiAKCi9hYWFhYSgqQ09NTUlUKSgqVEhFTilifGErYy8KICAgIGFhYWFhYWMKIDA6IGFhYWFhYWMKICAgIAojIEVuZCBvZiAicHJpb3JpdHkiIHRlc3RzICAKCi9hYWFhYSgqOm0pKCpQUlVORTptKSgqU0tJUDptKW18YSsvCiAgICBhYWFhYWEKIDA6IGEKCi9hYWFhYSgqOm0pKCpNQVJLOm0pKCpQUlVORSkoKlNLSVA6bSltfGErLwogICAgYWFhYWFhCiAwOiBhCgovYWFhYWEoKjpuKSgqUFJVTkU6bSkoKlNLSVA6bSltfGErLwogICAgYWFhYWFhCiAwOiBhYWFhCgovYWFhYWEoKjpuKSgqTUFSSzptKSgqUFJVTkUpKCpTS0lQOm0pbXxhKy8KICAgIGFhYWFhYQogMDogYQoKL2EoKk1BUks6QSlhYSgqUFJVTkU6QSlhKCpTS0lQOkEpYnxhK2MvCiAgICBhYWFhYwogMDogYWFjCgovYSgqTUFSSzpBKWFhKCpNQVJLOkEpYSgqU0tJUDpBKWJ8YStjLwogICAgYWFhYWMKIDA6IGFjCgovYWFhKCpQUlVORTpBKWEoKlNLSVA6QSlifGErYy8KICAgIGFhYWFjCiAwOiBhYWMKCi9hYWEoKk1BUks6QSlhKCpTS0lQOkEpYnxhK2MvCiAgICBhYWFhYwogMDogYWMKCi9hKCo6bSlhKCpDT01NSVQpKCpTS0lQOm0pYnxhK2MvbWFyawogICAgYWFhYWFhYwogMDogYWMKCi8uPyhhfGIoKlRIRU4pYykvCiAgICBiYQogMDogYmEKIDE6IGEKCi8oYSgqQ09NTUlUKWIpY3xhYmQvCiAgICBhYmMKIDA6IGFiYwogMTogYWIKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmQKTm8gbWF0Y2gKCi8oPz1hKCpDT01NSVQpYilhYmN8YWJkLwogICAgYWJjCiAwOiBhYmMKICAgIGFiZAogMDogYWJkCgovKD8+YSgqQ09NTUlUKWIpY3xhYmQvCiAgICBhYmMKIDA6IGFiYwogICAgYWJkCiAwOiBhYmQKCi9hKD89YigqQ09NTUlUKWMpW15kXXxhYmQvCiAgICBhYmMKIDA6IGFiClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJkCk5vIG1hdGNoCgovYSg/PWJjKS58YWJkLwogICAgYWJkCiAwOiBhYmQKICAgIGFiYyAKIDA6IGFiCiAgICAKL2EoPz5iKCpDT01NSVQpYylkfGFiZC8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYmNlYWJkIApObyBtYXRjaAoKL2EoPz5iYylkfGFiZC8KICAgIGFiY2VhYmQgCiAwOiBhYmQKCi8oPz5hKCpDT01NSVQpYiljfGFiZC8KICAgIGFiZAogMDogYWJkCgovKD8+YSgqQ09NTUlUKWMpZHxhYmQvClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWJkCk5vIG1hdGNoCgovKCg/PWEoKkNPTU1JVCliKWFifGFjKXswfSg/Oig/MSl8YShjKSkvCiAgICBhYyAKIDA6IGFjCiAxOiA8dW5zZXQ+CiAyOiBjCiAgICAKIyBUaGVzZSB0ZXN0cyB3ZXJlIGZvcm1lcmx5IGluIHRlc3QgMiwgYnV0IGNoYW5nZXMgaW4gUENSRSBhbmQgUGVybCBoYXZlCiMgbWFkZSB0aGVtIGNvbXBhdGlibGUuIAogICAgCi9eKGEpPyg/KDEpYXxiKSskLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGEKTm8gbWF0Y2gKCi8oPz1hXEtiKWFiLwogICAgYWIgCiAwOiBiCgovKD8hYVxLYilhYy8KICAgIGFjIAogMDogYWMKICAgIAovXmFiYyg/PD1iXEtjKWQvCiAgICBhYmNkCiAwOiBjZAoKL15hYmMoPzwhYlxLcSlkLwogICAgYWJjZAogMDogYWJjZAoKL0EoKlBSVU5FOkEpQSsoKlNLSVA6QSkoQnxaKSB8IEFDL3gsbWFyawpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFBQUMKTm8gbWF0Y2gsIG1hcmsgPSBBCgovXigoYWJjfGFiY3gpKCpUSEVOKXl8YWJjZCkvCiAgICBhYmNkCiAwOiBhYmNkCiAxOiBhYmNkClw9IEV4cGVjdCBubyBtYXRjaCAKICAgIGFiY3h5IApObyBtYXRjaAogICAgCi9eKCh5ZXN8bm8pKCpUSEVOKSgqRikpPy8KXD0gRXhwZWN0IG5vIG1hdGNoCiAgICB5ZXMKTm8gbWF0Y2gKCi8oQSAoLiopICAgQz8gKCpUSEVOKSAgfCBBIEQpICgqRkFJTCkveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFiY2RDQmVmZ0JoaUJxegpObyBtYXRjaAoKLyhBICguKikgICBDPyAoKlRIRU4pICB8IEEgRCkgei94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgIEM/ICgqVEhFTikgIHwgQSBEKSBccyogKCpGQUlMKS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgIEM/ICgqVEhFTikgIHwgQSBEKSBccyogei94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgICg/OkN8KSAoKlRIRU4pICB8IEEgRCkgKCpGQUlMKS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgICg/OkN8KSAoKlRIRU4pICB8IEEgRCkgei94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgIEN7MCw2fSAoKlRIRU4pICB8IEEgRCkgKCpGQUlMKS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgIEN7MCw2fSAoKlRIRU4pICB8IEEgRCkgei94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgIChDRSl7MCw2fSAoKlRIRU4pICB8IEEgRCkgKCpGQUlMKS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENFQmVmZ0JoaUJxegpObyBtYXRjaAoKLyhBICguKikgICAoQ0UpezAsNn0gKCpUSEVOKSAgfCBBIEQpIHoveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFiY2RDRUJlZmdCaGlCcXoKTm8gbWF0Y2gKCi8oQSAoLiopICAgKENFKil7MCw2fSAoKlRIRU4pICB8IEEgRCkgKCpGQUlMKS94Clw9IEV4cGVjdCBubyBtYXRjaAogICAgQWJjZENCZWZnQmhpQnF6Ck5vIG1hdGNoCgovKEEgKC4qKSAgIChDRSopezAsNn0gKCpUSEVOKSAgfCBBIEQpIHoveApcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIEFiY2RDQmVmZ0JoaUJxegpObyBtYXRjaAoKLyg/PWEoKkNPTU1JVClifGFjKWFjfGFjLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFjCk5vIG1hdGNoCgovKD89YSgqQ09NTUlUKWJ8KGFjKSkgYWMgfCAoYSljL3gKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYwpObyBtYXRjaAoKIyAtLS0tCgovKD8oPyFiKCpUSEVOKWEpYm58Ym5uKS8KICAgIGJubiAKIDA6IGJuCgovKD8hYigqU0tJUClhKWJufGJubi8KICAgIGJubgogMDogYm4KICAgIAovKD8oPyFiKCpTS0lQKWEpYm58Ym5uKS8KICAgIGJubiAKIDA6IGJuCgovKD8hYigqUFJVTkUpYSlibnxibm4vCiAgICBibm4KIDA6IGJuCiAgICAKLyg/KD8hYigqUFJVTkUpYSlibnxibm4pLwogICAgYm5uIAogMDogYm4KICAgCi8oPyFiKCpDT01NSVQpYSlibnxibm4vCiAgICBibm4KIDA6IGJuCiAgICAKLyg/KD8hYigqQ09NTUlUKWEpYm58Ym5uKS8KICAgYm5uIAogMDogYm4KCi8oPz1iKCpTS0lQKWEpYm58Ym5uLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGJubgpObyBtYXRjaAoKLyg/PWIoKlRIRU4pYSlibnxibm4vCiAgICBibm4KIDA6IGJubgogICAgCi9eKD8hYSgqU0tJUCliKS8KICAgIGFjCiAwOiAKCi9eKD8hYSgqU0tJUCliKS4uLwogICAgYWNkCiAwOiBhYwoKLyg/IWEoKlNLSVApYikuLi8KICAgIGFjZAogMDogYWMKCi9eKD8oPyFhKCpTS0lQKWIpKS8KICAgIGFjCiAwOiAKCi9eKD8hYSgqUFJVTkUpYikuLi8KICAgIGFjZAogMDogYWMKCi8oPyFhKCpQUlVORSliKS4uLwogICAgYWNkCiAwOiBhYwoKLyg/IWEoKkNPTU1JVCliKWFjfGNkLwogICAgYWMKIDA6IGFjCgovXEEuKj8oPzphfGJjKS8KICAgIGJhCiAwOiBiYQoKL14oQSgqVEhFTilCfEMoKlRIRU4pRCkvCiAgICBDRCAgICAgICAgICAgCiAwOiBDRAogMTogQ0QKCi8oKjptKG0pKD8meSkoPyhERUZJTkUpKD88eT5iKSkvbWFyawogICAgYWJjCiAwOiBiCk1LOiBtKG0KCi8oKlBSVU5FOm0obSkoPyZ5KSg/KERFRklORSkoPzx5PmIpKS9tYXJrCiAgICBhYmMKIDA6IGIKTUs6IG0obQoKLygqU0tJUDptKG0pKD8meSkoPyhERUZJTkUpKD88eT5iKSkvbWFyawogICAgYWJjCiAwOiBiCgovKCpUSEVOOm0obSkoPyZ5KSg/KERFRklORSkoPzx5PmIpKS9tYXJrCiAgICBhYmMKIDA6IGIKTUs6IG0obQoKL15cZCpcd3s0fS8KICAgIDEyMzQKIDA6IDEyMzQKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICAxMjMgCk5vIG1hdGNoCgovXlteYl0qXHd7NH0vCiAgICBhYWFhCiAwOiBhYWFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhICAgICAKTm8gbWF0Y2gKCi9eW15iXSpcd3s0fS9pCiAgICBhYWFhCiAwOiBhYWFhClw9IEV4cGVjdCBubyBtYXRjaAogICAgYWFhICAgICAKTm8gbWF0Y2gKCi9eYSpcd3s0fS8KICAgIGFhYWEKIDA6IGFhYWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWEgICAgIApObyBtYXRjaAoKL15hKlx3ezR9L2kKICAgIGFhYWEKIDA6IGFhYWEKXD0gRXhwZWN0IG5vIG1hdGNoCiAgICBhYWEgICAgIApObyBtYXRjaAoKLyg/Oig/PG4+Zm9vKXwoPzxuPmJhcikpXGs8bj4vZHVwbmFtZXMKICAgIGZvb2ZvbwogMDogZm9vZm9vCiAxOiBmb28KICAgIGJhcmJhcgogMDogYmFyYmFyCiAxOiA8dW5zZXQ+CiAyOiBiYXIKCi8oPzxuPkEpKD86KD88bj5mb28pfCg/PG4+YmFyKSlcazxuPi9kdXBuYW1lcwogICAgQWZvb0EKIDA6IEFmb29BCiAxOiBBCiAyOiBmb28KICAgIEFiYXJBICAKIDA6IEFiYXJBCiAxOiBBCiAyOiA8dW5zZXQ+CiAzOiBiYXIKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgQWZvb2ZvbwpObyBtYXRjaAogICAgQWJhcmJhcgpObyBtYXRjaAoKL14oXGQrKVxzK0lOXHMrU09BXHMrKFxTKylccysoXFMrKVxzKlwoXHMqJC8KICAgIDEgSU4gU09BIG5vbi1zcDEgbm9uLXNwMigKIDA6IDEgSU4gU09BIG5vbi1zcDEgbm9uLXNwMigKIDE6IDEKIDI6IG5vbi1zcDEKIDM6IG5vbi1zcDIKCi9eICg/Oig/PEE+QSl8KD8nQidCKSg/PEE+QSkpICg/KCdBJyl4KSAoPyg8Qj4peSkkL3gsZHVwbmFtZXMKICAgIEF4CiAwOiBBeAogMTogQQogICAgQkF4eSAKIDA6IEJBeHkKIDE6IDx1bnNldD4KIDI6IEIKIDM6IEEKICAgIAovXkFceFovCiAgICBBXDBaIAogMDogQVx4MDBaCgovXkFcb3sxMjN9Qi8KICAgIEFcMTIzQgogMDogQVNCCgovIF4gYSArICsgYiAkIC94CiAgICBhYWFhYgogMDogYWFhYWIKICAgIAovIF4gYSArICNjb21tZW50CiAgKyBiICQgL3gKICAgIGFhYWFiCiAwOiBhYWFhYgogICAgCi8gXiBhICsgI2NvbW1lbnQKICAjY29tbWVudAogICsgYiAkIC94CiAgICBhYWFhYgogMDogYWFhYWIKICAgIAovIF4gKD8+IGEgKyApIGIgJCAveAogICAgYWFhYWIgCiAwOiBhYWFhYgoKLyBeICggYSArICkgKyArIFx3ICQgL3gKICAgIGFhYWFiIAogMDogYWFhYWIKIDE6IGFhYWEKCi8oPzphXEtiKSorL2FmdGVydGV4dAogICAgYWJhYmMKIDA6IGIKIDArIGMKCi8oPz5hXEtiKSovYWZ0ZXJ0ZXh0CiAgICBhYmFiYwogMDogYgogMCsgYwoKLyg/OmFcS2IpKi9hZnRlcnRleHQKICAgIGFiYWJjCiAwOiBiCiAwKyBjCgovKGFcS2IpKisvYWZ0ZXJ0ZXh0CiAgICBhYmFiYwogMDogYgogMCsgYwogMTogYWIKCi8oYVxLYikqL2FmdGVydGV4dAogICAgYWJhYmMKIDA6IGIKIDArIGMKIDE6IGFiCgovKD86eHwoPzooeHh8eXkpK3x4fHh8eHx4fHgpfGF8YXxhKWJjLwpcPSBFeHBlY3Qgbm8gbWF0Y2gKICAgIGFjYgpObyBtYXRjaAoKJ1xBKD86W15cIl0rK3xcIig/OlteXCJdKit8XCJcIikqK1wiKSsrJwogICAgTk9OIFFVT1RFRCBcIlFVT1RcIlwiRURcIiBBRlRFUiBcIk5PVCBNQVRDSEVECiAwOiBOT04gUVVPVEVEICJRVU9UIiJFRCIgQUZURVIgCgonXEEoPzpbXlwiXSsrfFwiKD86W15cIl0rK3xcIlwiKSorXCIpKysnCiAgICBOT04gUVVPVEVEIFwiUVVPVFwiXCJFRFwiIEFGVEVSIFwiTk9UIE1BVENIRUQKIDA6IE5PTiBRVU9URUQgIlFVT1QiIkVEIiBBRlRFUiAKCidcQSg/OlteXCJdKyt8XCIoPzpbXlwiXSsrfFwiXCIpKytcIikrKycKICAgIE5PTiBRVU9URUQgXCJRVU9UXCJcIkVEXCIgQUZURVIgXCJOT1QgTUFUQ0hFRAogMDogTk9OIFFVT1RFRCAiUVVPVCIiRUQiIEFGVEVSIAoKJ1xBKFteXCIxXSsrfFtcIjJdKFteXCIzXSorfFtcIjRdW1wiNV0pKitbXCI2XSkrKycKICAgIE5PTiBRVU9URUQgXCJRVU9UXCJcIkVEXCIgQUZURVIgXCJOT1QgTUFUQ0hFRAogMDogTk9OIFFVT1RFRCAiUVVPVCIiRUQiIEFGVEVSIAogMTogIEFGVEVSIAogMjogCgovXlx3Kyg/PlxzKikoPzw9XHcpLwogICAgdGVzdCB0ZXN0CiAwOiB0ZXMKCi8oP1A8c2FtZT5hKSg/UDxzYW1lPmIpL2csZHVwbmFtZXMKICAgIGFiYmFiYQogMDogYWIKIDE6IGEKIDI6IGIKIDA6IGFiCiAxOiBhCiAyOiBiCgovKD9QPHNhbWU+YSkoP1A8c2FtZT5iKSg/UD1zYW1lKS9nLGR1cG5hbWVzCiAgICBhYmJhYmEKIDA6IGFiYQogMTogYQogMjogYgoKLyg/UD1zYW1lKT8oP1A8c2FtZT5hKSg/UDxzYW1lPmIpL2csZHVwbmFtZXMKICAgIGFiYmFiYQogMDogYWIKIDE6IGEKIDI6IGIKIDA6IGFiCiAxOiBhCiAyOiBiCgovKD86KD9QPXNhbWUpPyg/Oig/UDxzYW1lPmEpfCg/UDxzYW1lPmIpKSg/UD1zYW1lKSkrL2csZHVwbmFtZXMKICAgIGJiYmFhYWJhYWJiCiAwOiBiYmJhYWFiYQogMTogYQogMjogYgogMDogYmIKIDE6IDx1bnNldD4KIDI6IGIKCi8oPzooP1A9c2FtZSk/KD86KD9QPXNhbWUpKD9QPHNhbWU+YSkoP1A9c2FtZSl8KD9QPXNhbWUpPyg/UDxzYW1lPmIpKD9QPXNhbWUpKXsyfSg/UD1zYW1lKSg/UDxzYW1lPmMpKD9QPXNhbWUpKXsyfSg/UDxzYW1lPnopPy9nLGR1cG5hbWVzClw9IEV4cGVjdCBubyBtYXRjaAogICAgYmJiYWFhY2NjY2FhYWJiYmNjCk5vIG1hdGNoCgovKD9QPE5hbWU+YSk/KD9QPE5hbWUyPmIpPyg/KDxOYW1lPiljfGQpKmwvCiAgICBhY2wKIDA6IGFjbAogMTogYQogICAgYmRsCiAwOiBiZGwKIDE6IDx1bnNldD4KIDI6IGIKICAgIGFkbAogMDogZGwKICAgIGJjbCAgICAKIDA6IGwKCi9cc2FiYy8KICAgIFx4ezBifWFiYwogMDogXHgwYmFiYwoKL1tcUWFdXEVdKy8KICAgIGFhXV0KIDA6IGFhXV0KCi9bXFFdYVxFXSsvCiAgICBhYV1dCiAwOiBhYV1dCgovQSgoKCgoKCgoYSkpKSkpKSkpXDhCLyAKICAgIEFhYUIKIDA6IEFhYUIKIDE6IGEKIDI6IGEKIDM6IGEKIDQ6IGEKIDU6IGEKIDY6IGEKIDc6IGEKIDg6IGEKCi9BKCgoKCgoKCgoYSkpKSkpKSkpKVw5Qi8gCiAgICBBYWFCCiAwOiBBYWFCCiAxOiBhCiAyOiBhCiAzOiBhCiA0OiBhCiA1OiBhCiA2OiBhCiA3OiBhCiA4OiBhCiA5OiBhCiAgICAKL0FbXDhcOV1CLwogICAgQThCCiAwOiBBOEIKICAgIEE5QiAgCiAwOiBBOUIKCi8ofGFiKSo/ZC8KICAgYWJkCiAwOiBhYmQKIDE6IGFiCiAgIHh5ZCAKIDA6IGQKCi8oPzooKGFiY2QpKXwoKCg/Oig/Oig/Oig/OmFiY3woPzphYmNkZWYpKSkpYilhYmNkZWZnaGkpYWJjKXwoKCpBQ0NFUFQpKSkvCiAgICAxMjM0YWJjZAogMDogCiAxOiA8dW5zZXQ+CiAyOiA8dW5zZXQ+CiAzOiA8dW5zZXQ+CiA0OiA8dW5zZXQ+CiA1OiAKCi8oXDJ8YSkoXDEpLwogICAgYWFhCiAwOiBhYQogMTogYQogMjogYQoKLyhcMikoXDEpLwoKIloqKHxkKil7MjE2fSIKCiIoPzEpKD8jPycpezh9KGEpIgogICAgYmFhYWFhYWFhYWMKIDA6IGFhYWFhYWFhYQogMTogYQoKLygoKCgoKCgoKCgoKHgpKSkpKSkpKSkpKSlcMTIvCiAgICB4eAogMDogeHgKIDE6IHgKIDI6IHgKIDM6IHgKIDQ6IHgKIDU6IHgKIDY6IHgKIDc6IHgKIDg6IHgKIDk6IHgKMTA6IHgKMTE6IHgKMTI6IHgKCi9BW1w4XUJbXDldQy8KICAgIEE4QjlDCiAwOiBBOEI5QwoKLyg/MSkoKSgoKCgoKFwxKyspKVx4ODUpKyl8KSkvCiAgICBceDg1XHg4NQogMDogXHg4NVx4ODUKIDE6IAogMjogXHg4NVx4ODUKIDM6IFx4ODVceDg1CiA0OiBceDg1XHg4NQogNTogXHg4NQogNjogCiA3OiAKCiIoP3woXGsnUG0nKXwoPydQbScpKSIKICAgIGFiY2QKIDA6IAogMTogCgovKD98KGFhYSl8KGIpKVxnezF9LwogICAgYWFhYWFhCiAwOiBhYWFhYWEKIDE6IGFhYQogICAgYmIgCiAwOiBiYgogMTogYgoKLyg/fChhYWEpfChiKSkoPzEpLwogICAgYWFhYWFhCiAwOiBhYWFhYWEKIDE6IGFhYQogICAgYmFhYSAKIDA6IGJhYWEKIDE6IGIKXD0gRXhwZWN0IG5vIG1hdGNoIAogICAgYmIgCk5vIG1hdGNoCgovKD98KGFhYSl8KGIpKS8KICAgIHhhYWEKIDA6IGFhYQogMTogYWFhCiAgICB4YmMgCiAwOiBiCiAxOiBiCgovKD98KD8nYSdhYWEpfCg/J2EnYikpXGsnYScvCiAgICBhYWFhYWEKIDA6IGFhYWFhYQogMTogYWFhCiAgICBiYiAKIDA6IGJiCiAxOiBiCgovKD98KD8nYSdhYWEpfCg/J2EnYikpKD8nYSdjY2NjKVxrJ2EnL2R1cG5hbWVzCiAgICBhYWFjY2NjYWFhCiAwOiBhYWFjY2NjYWFhCiAxOiBhYWEKIDI6IGNjY2MKICAgIGJjY2NjYiAKIDA6IGJjY2NjYgogMTogYgogMjogY2NjYwoKIyBFbmQgb2YgdGVzdGlucHV0MSAK