UENSRSB2ZXJzaW9uIDMuOSAwMi1KYW4tMjAwMgoKL3RoZSBxdWljayBicm93biBmb3gvCiAgICB0aGUgcXVpY2sgYnJvd24gZm94CiAwOiB0aGUgcXVpY2sgYnJvd24gZm94CiAgICBUaGUgcXVpY2sgYnJvd24gRk9YCk5vIG1hdGNoCiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IHRoZSBxdWljayBicm93biBmb3g/CiAwOiB0aGUgcXVpY2sgYnJvd24gZm94CiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IFRIRSBRVUlDSyBCUk9XTiBGT1g/Ck5vIG1hdGNoCgovVGhlIHF1aWNrIGJyb3duIGZveC9pCiAgICB0aGUgcXVpY2sgYnJvd24gZm94CiAwOiB0aGUgcXVpY2sgYnJvd24gZm94CiAgICBUaGUgcXVpY2sgYnJvd24gRk9YCiAwOiBUaGUgcXVpY2sgYnJvd24gRk9YCiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IHRoZSBxdWljayBicm93biBmb3g/CiAwOiB0aGUgcXVpY2sgYnJvd24gZm94CiAgICBXaGF0IGRvIHlvdSBrbm93IGFib3V0IFRIRSBRVUlDSyBCUk9XTiBGT1g/CiAwOiBUSEUgUVVJQ0sgQlJPV04gRk9YCgovYWJjZFx0XG5cclxmXGFcZVwwNzFceDNiXCRcXFw/Y2F4eXovCiAgICBhYmNkXHRcblxyXGZcYVxlOTtcJFxcP2NheHl6CiAwOiBhYmNkXHgwOVx4MGFceDBkXHgwY1x4MDdceDFiOTskXD9jYXh5egoKL2EqYWJjP3h5eitwcXJ7M31hYnsyLH14eXs0LDV9cHF7MCw2fUFCezAsfXp6LwogICAgYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYnh5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFhYnh5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFhYnh5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFhYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFiY3h5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwQXp6CiAwOiBhYWFiY3h5enBxcnJyYWJieHl5eXlwQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFhYWJjeHl6cHFycnJhYmJ4eXl5eXBxcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxQXp6CiAwOiBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFxcXFBenoKICAgIGFhYWJjeHl6cHFycnJhYmJ4eXl5eXBxcXFxcUF6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFxcXFxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcXFxQXp6CiAwOiBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcXFxQXp6CiAgICBhYWFhYmN4eXpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFiY3h5enBxcnJyYWJieHl5eXlwcUF6egogICAgYWJ4eXp6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYnh5enpwcXJycmFiYnh5eXl5cHFBenoKICAgIGFhYnh5enp6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWJ4eXp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYnh5enp6enBxcnJyYWJieHl5eXlwcUF6egogMDogYWFhYnh5enp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYWJ4eXp6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFieHl6enp6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYmN4eXp6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYmN4eXp6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWJjeHl6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYmN4eXp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYmN4eXp6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWJjeHl6enp6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICBhYWFhYmN4eXp6enpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFiY3h5enp6enBxcnJyYWJieHl5eXlwcUF6egogICAgYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXlwcUF6egogMDogYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXlwcUF6egogICAgYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXl5cHFBenoKIDA6IGFhYWFiY3h5enp6enBxcnJyYWJiYnh5eXl5eXBxQXp6CiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwQUJ6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cEFCenoKICAgIGFhYWJjeHl6cHFycnJhYmJ4eXl5eXBBQkJ6egogMDogYWFhYmN4eXpwcXJycmFiYnh5eXl5cEFCQnp6CiAgICA+Pj5hYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICA+YWFhYWJ4eXpwcXJycmFiYnh5eXl5cHFBenoKIDA6IGFhYWFieHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAgICA+Pj4+YWJjeHl6cHFycnJhYmJ4eXl5eXBxQXp6CiAwOiBhYmN4eXpwcXJycmFiYnh5eXl5cHFBenoKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYnh5enBxcnJhYmJ4eXl5eXBxQXp6Ck5vIG1hdGNoCiAgICBhYnh5enBxcnJycmFiYnh5eXl5cHFBenoKTm8gbWF0Y2gKICAgIGFieHl6cHFycnJhYnh5eXl5cHFBenoKTm8gbWF0Y2gKICAgIGFhYWFiY3h5enp6enBxcnJyYWJiYnh5eXl5eXlwcUF6egpObyBtYXRjaAogICAgYWFhYWJjeHl6enp6cHFycnJhYmJieHl5eXBxQXp6Ck5vIG1hdGNoCiAgICBhYWFiY3h5enBxcnJyYWJieHl5eXlwcXFxcXFxcUF6egpObyBtYXRjaAoKL14oYWJjKXsxLDJ9enovCiAgICBhYmN6egogMDogYWJjenoKIDE6IGFiYwogICAgYWJjYWJjenoKIDA6IGFiY2FiY3p6CiAxOiBhYmMKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICB6egpObyBtYXRjaAogICAgYWJjYWJjYWJjenoKTm8gbWF0Y2gKICAgID4+YWJjenoKTm8gbWF0Y2gKCi9eKGIrP3xhKXsxLDJ9P2MvCiAgICBiYwogMDogYmMKIDE6IGIKICAgIGJiYwogMDogYmJjCiAxOiBiCiAgICBiYmJjCiAwOiBiYmJjCiAxOiBiYgogICAgYmFjCiAwOiBiYWMKIDE6IGEKICAgIGJiYWMKIDA6IGJiYWMKIDE6IGEKICAgIGFhYwogMDogYWFjCiAxOiBhCiAgICBhYmJiYmJiYmJiYmJjCiAwOiBhYmJiYmJiYmJiYmJjCiAxOiBiYmJiYmJiYmJiYgogICAgYmJiYmJiYmJiYmJhYwogMDogYmJiYmJiYmJiYmJhYwogMTogYQogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFhYWMKTm8gbWF0Y2gKICAgIGFiYmJiYmJiYmJiYmFjCk5vIG1hdGNoCgovXihiK3xhKXsxLDJ9Yy8KICAgIGJjCiAwOiBiYwogMTogYgogICAgYmJjCiAwOiBiYmMKIDE6IGJiCiAgICBiYmJjCiAwOiBiYmJjCiAxOiBiYmIKICAgIGJhYwogMDogYmFjCiAxOiBhCiAgICBiYmFjCiAwOiBiYmFjCiAxOiBhCiAgICBhYWMKIDA6IGFhYwogMTogYQogICAgYWJiYmJiYmJiYmJiYwogMDogYWJiYmJiYmJiYmJiYwogMTogYmJiYmJiYmJiYmIKICAgIGJiYmJiYmJiYmJiYWMKIDA6IGJiYmJiYmJiYmJiYWMKIDE6IGEKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYWFjCk5vIG1hdGNoCiAgICBhYmJiYmJiYmJiYmJhYwpObyBtYXRjaAoKL14oYit8YSl7MSwyfT9iYy8KICAgIGJiYwogMDogYmJjCiAxOiBiCgovXihiKnxiYSl7MSwyfT9iYy8KICAgIGJhYmMKIDA6IGJhYmMKIDE6IGJhCiAgICBiYmFiYwogMDogYmJhYmMKIDE6IGJhCiAgICBiYWJhYmMKIDA6IGJhYmFiYwogMTogYmEKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBiYWJhYmJjCk5vIG1hdGNoCiAgICBiYWJhYmFiYwpObyBtYXRjaAoKL14oYmF8YiopezEsMn0/YmMvCiAgICBiYWJjCiAwOiBiYWJjCiAxOiBiYQogICAgYmJhYmMKIDA6IGJiYWJjCiAxOiBiYQogICAgYmFiYWJjCiAwOiBiYWJhYmMKIDE6IGJhCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYmFiYWJiYwpObyBtYXRjaAogICAgYmFiYWJhYmMKTm8gbWF0Y2gKCi9eXGNhXGNBXGNbXGN7XGM6LwogICAgXHgwMVx4MDFcZTt6CiAwOiBceDAxXHgwMVx4MWI7egoKL15bYWJcXWNkZV0vCiAgICBhdGhpbmcKIDA6IGEKICAgIGJ0aGluZwogMDogYgogICAgXXRoaW5nCiAwOiBdCiAgICBjdGhpbmcKIDA6IGMKICAgIGR0aGluZwogMDogZAogICAgZXRoaW5nCiAwOiBlCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgZnRoaW5nCk5vIG1hdGNoCiAgICBbdGhpbmcKTm8gbWF0Y2gKICAgIFxcdGhpbmcKTm8gbWF0Y2gKCi9eW11jZGVdLwogICAgXXRoaW5nCiAwOiBdCiAgICBjdGhpbmcKIDA6IGMKICAgIGR0aGluZwogMDogZAogICAgZXRoaW5nCiAwOiBlCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYXRoaW5nCk5vIG1hdGNoCiAgICBmdGhpbmcKTm8gbWF0Y2gKCi9eW15hYlxdY2RlXS8KICAgIGZ0aGluZwogMDogZgogICAgW3RoaW5nCiAwOiBbCiAgICBcXHRoaW5nCiAwOiBcCiAgICAqKiogRmFpbGVycwogMDogKgogICAgYXRoaW5nCk5vIG1hdGNoCiAgICBidGhpbmcKTm8gbWF0Y2gKICAgIF10aGluZwpObyBtYXRjaAogICAgY3RoaW5nCk5vIG1hdGNoCiAgICBkdGhpbmcKTm8gbWF0Y2gKICAgIGV0aGluZwpObyBtYXRjaAoKL15bXl1jZGVdLwogICAgYXRoaW5nCiAwOiBhCiAgICBmdGhpbmcKIDA6IGYKICAgICoqKiBGYWlsZXJzCiAwOiAqCiAgICBddGhpbmcKTm8gbWF0Y2gKICAgIGN0aGluZwpObyBtYXRjaAogICAgZHRoaW5nCk5vIG1hdGNoCiAgICBldGhpbmcKTm8gbWF0Y2gKCi9eXIEvCiAgICCBCiAwOiBceDgxCgovXv8vCiAgICD/CiAwOiBceGZmCgovXlswLTldKyQvCiAgICAwCiAwOiAwCiAgICAxCiAwOiAxCiAgICAyCiAwOiAyCiAgICAzCiAwOiAzCiAgICA0CiAwOiA0CiAgICA1CiAwOiA1CiAgICA2CiAwOiA2CiAgICA3CiAwOiA3CiAgICA4CiAwOiA4CiAgICA5CiAwOiA5CiAgICAxMAogMDogMTAKICAgIDEwMAogMDogMTAwCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWJjCk5vIG1hdGNoCgovXi4qbnRlci8KICAgIGVudGVyCiAwOiBlbnRlcgogICAgaW50ZXIKIDA6IGludGVyCiAgICB1cG9udGVyCiAwOiB1cG9udGVyCgovXnh4eFswLTldKyQvCiAgICB4eHgwCiAwOiB4eHgwCiAgICB4eHgxMjM0CiAwOiB4eHgxMjM0CiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgeHh4Ck5vIG1hdGNoCgovXi4rWzAtOV1bMC05XVswLTldJC8KICAgIHgxMjMKIDA6IHgxMjMKICAgIHh4MTIzCiAwOiB4eDEyMwogICAgMTIzNDU2CiAwOiAxMjM0NTYKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICAxMjMKTm8gbWF0Y2gKICAgIHgxMjM0CiAwOiB4MTIzNAoKL14uKz9bMC05XVswLTldWzAtOV0kLwogICAgeDEyMwogMDogeDEyMwogICAgeHgxMjMKIDA6IHh4MTIzCiAgICAxMjM0NTYKIDA6IDEyMzQ1NgogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIDEyMwpObyBtYXRjaAogICAgeDEyMzQKIDA6IHgxMjM0CgovXihbXiFdKykhKC4rKT1hcHF1eHpcLml4clwuenp6XC5hY1wudWskLwogICAgYWJjIXBxcj1hcHF1eHouaXhyLnp6ei5hYy51awogMDogYWJjIXBxcj1hcHF1eHouaXhyLnp6ei5hYy51awogMTogYWJjCiAyOiBwcXIKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICAhcHFyPWFwcXV4ei5peHIuenp6LmFjLnVrCk5vIG1hdGNoCiAgICBhYmMhPWFwcXV4ei5peHIuenp6LmFjLnVrCk5vIG1hdGNoCiAgICBhYmMhcHFyPWFwcXV4ejppeHIuenp6LmFjLnVrCk5vIG1hdGNoCiAgICBhYmMhcHFyPWFwcXV4ei5peHIuenp6LmFjLnVrawpObyBtYXRjaAoKLzovCiAgICBXZWxsLCB3ZSBuZWVkIGEgY29sb246IHNvbWV3aGVyZQogMDogOgogICAgKioqIEZhaWwgaWYgd2UgZG9uJ3QKTm8gbWF0Y2gKCi8oW1xkYS1mOl0rKSQvaQogICAgMGFiYwogMDogMGFiYwogMTogMGFiYwogICAgYWJjCiAwOiBhYmMKIDE6IGFiYwogICAgZmVkCiAwOiBmZWQKIDE6IGZlZAogICAgRQogMDogRQogMTogRQogICAgOjoKIDA6IDo6CiAxOiA6OgogICAgNWYwMzoxMkMwOjo5MzJlCiAwOiA1ZjAzOjEyQzA6OjkzMmUKIDE6IDVmMDM6MTJDMDo6OTMyZQogICAgZmVkIGRlZgogMDogZGVmCiAxOiBkZWYKICAgIEFueSBvbGQgc3R1ZmYKIDA6IGZmCiAxOiBmZgogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIDB6enoKTm8gbWF0Y2gKICAgIGd6enoKTm8gbWF0Y2gKICAgIGZlZFx4MjAKTm8gbWF0Y2gKICAgIEFueSBvbGQgcnViYmlzaApObyBtYXRjaAoKL14uKlwuKFxkezEsM30pXC4oXGR7MSwzfSlcLihcZHsxLDN9KSQvCiAgICAuMS4yLjMKIDA6IC4xLjIuMwogMTogMQogMjogMgogMzogMwogICAgQS4xMi4xMjMuMAogMDogQS4xMi4xMjMuMAogMTogMTIKIDI6IDEyMwogMzogMAogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIC4xLjIuMzMzMwpObyBtYXRjaAogICAgMS4yLjMKTm8gbWF0Y2gKICAgIDEyMzQuMi4zCk5vIG1hdGNoCgovXihcZCspXHMrSU5ccytTT0FccysoXFMrKVxzKyhcUyspXHMqXChccyokLwogICAgMSBJTiBTT0Egbm9uLXNwMSBub24tc3AyKAogMDogMSBJTiBTT0Egbm9uLXNwMSBub24tc3AyKAogMTogMQogMjogbm9uLXNwMQogMzogbm9uLXNwMgogICAgMSAgICBJTiAgICBTT0EgICAgbm9uLXNwMSAgICBub24tc3AyICAgKAogMDogMSAgICBJTiAgICBTT0EgICAgbm9uLXNwMSAgICBub24tc3AyICAgKAogMTogMQogMjogbm9uLXNwMQogMzogbm9uLXNwMgogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIDFJTiBTT0Egbm9uLXNwMSBub24tc3AyKApObyBtYXRjaAoKL15bYS16QS1aXGRdW2EtekEtWlxkXC1dKihcLlthLXpBLVpcZF1bYS16QS16XGRcLV0qKSpcLiQvCiAgICBhLgogMDogYS4KICAgIFouCiAwOiBaLgogICAgMi4KIDA6IDIuCiAgICBhYi1jLnBxLXIuCiAwOiBhYi1jLnBxLXIuCiAxOiAucHEtcgogICAgc3hrLnp6ei5hYy51ay4KIDA6IHN4ay56enouYWMudWsuCiAxOiAudWsKICAgIHgtLnktLgogMDogeC0ueS0uCiAxOiAueS0KICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICAtYWJjLnBlcS4KTm8gbWF0Y2gKCi9eXCpcLlthLXpdKFthLXpcLVxkXSpbYS16XGRdKyk/KFwuW2Etel0oW2EtelwtXGRdKlthLXpcZF0rKT8pKiQvCiAgICAqLmEKIDA6ICouYQogICAgKi5iMC1hCiAwOiAqLmIwLWEKIDE6IDAtYQogICAgKi5jMy1iLmMKIDA6ICouYzMtYi5jCiAxOiAzLWIKIDI6IC5jCiAgICAqLmMtYS5iLWMKIDA6ICouYy1hLmItYwogMTogLWEKIDI6IC5iLWMKIDM6IC1jCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgKi4wCk5vIG1hdGNoCiAgICAqLmEtCk5vIG1hdGNoCiAgICAqLmEtYi5jLQpObyBtYXRjaAogICAgKi5jLWEuMC1jCk5vIG1hdGNoCgovXig/PWFiKGRlKSkoYWJkKShlKS8KICAgIGFiZGUKIDA6IGFiZGUKIDE6IGRlCiAyOiBhYmQKIDM6IGUKCi9eKD8hKGFiKWRlfHgpKGFiZCkoZikvCiAgICBhYmRmCiAwOiBhYmRmCiAxOiA8dW5zZXQ+CiAyOiBhYmQKIDM6IGYKCi9eKD89KGFiKGNkKSkpKGFiKS8KICAgIGFiY2QKIDA6IGFiCiAxOiBhYmNkCiAyOiBjZAogMzogYWIKCi9eW1xkYS1mXShcLltcZGEtZl0pKiQvaQogICAgYS5iLmMuZAogMDogYS5iLmMuZAogMTogLmQKICAgIEEuQi5DLkQKIDA6IEEuQi5DLkQKIDE6IC5ECiAgICBhLmIuYy4xLjIuMy5DCiAwOiBhLmIuYy4xLjIuMy5DCiAxOiAuQwoKL15cIi4qXCJccyooOy4qKT8kLwogICAgXCIxMjM0XCIKIDA6ICIxMjM0IgogICAgXCJhYmNkXCIgOwogMDogImFiY2QiIDsKIDE6IDsKICAgIFwiXCIgOyByaHViYXJiCiAwOiAiIiA7IHJodWJhcmIKIDE6IDsgcmh1YmFyYgogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIFwiMTIzNFwiIDogdGhpbmdzCk5vIG1hdGNoCgovXiQvCiAgICBcCiAwOiAKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCgovICAgXiAgICBhICAgKD8jIGJlZ2lucyB3aXRoIGEpICBiXHNjICg/IyB0aGVuIGIgYykgJCAoPyMgdGhlbiBlbmQpL3gKICAgIGFiIGMKIDA6IGFiIGMKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYmMKTm8gbWF0Y2gKICAgIGFiIGNkZQpObyBtYXRjaAoKLyg/eCkgICBeICAgIGEgICAoPyMgYmVnaW5zIHdpdGggYSkgIGJcc2MgKD8jIHRoZW4gYiBjKSAkICg/IyB0aGVuIGVuZCkvCiAgICBhYiBjCiAwOiBhYiBjCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWJjCk5vIG1hdGNoCiAgICBhYiBjZGUKTm8gbWF0Y2gKCi9eICAgYVwgYltjIF1kICAgICAgICQveAogICAgYSBiY2QKIDA6IGEgYmNkCiAgICBhIGIgZAogMDogYSBiIGQKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYmNkCk5vIG1hdGNoCiAgICBhYiBkCk5vIG1hdGNoCgovXihhKGIoYykpKShkKGUoZikpKShoKGkoaikpKShrKGwobSkpKSQvCiAgICBhYmNkZWZoaWprbG0KIDA6IGFiY2RlZmhpamtsbQogMTogYWJjCiAyOiBiYwogMzogYwogNDogZGVmCiA1OiBlZgogNjogZgogNzogaGlqCiA4OiBpagogOTogagoxMDoga2xtCjExOiBsbQoxMjogbQoKL14oPzphKGIoYykpKSg/OmQoZShmKSkpKD86aChpKGopKSkoPzprKGwobSkpKSQvCiAgICBhYmNkZWZoaWprbG0KIDA6IGFiY2RlZmhpamtsbQogMTogYmMKIDI6IGMKIDM6IGVmCiA0OiBmCiA1OiBpagogNjogagogNzogbG0KIDg6IG0KCi9eW1x3XVtcV11bXHNdW1xTXVtcZF1bXERdW1xiXVtcbl1bXGNdXVtcMDIyXS8KICAgIGErIFowK1x4MDhcblx4MWRceDEyCiAwOiBhKyBaMCtceDA4XHgwYVx4MWRceDEyCgovXlsuXiR8KCkqKz97LH1dKy8KICAgIC5eXCQoKispfHs/LD99CiAwOiAuXiQoKispfHs/LD99CgovXmEqXHcvCiAgICB6CiAwOiB6CiAgICBhegogMDogYXoKICAgIGFhYXoKIDA6IGFhYXoKICAgIGEKIDA6IGEKICAgIGFhCiAwOiBhYQogICAgYWFhYQogMDogYWFhYQogICAgYSsKIDA6IGEKICAgIGFhKwogMDogYWEKCi9eYSo/XHcvCiAgICB6CiAwOiB6CiAgICBhegogMDogYQogICAgYWFhegogMDogYQogICAgYQogMDogYQogICAgYWEKIDA6IGEKICAgIGFhYWEKIDA6IGEKICAgIGErCiAwOiBhCiAgICBhYSsKIDA6IGEKCi9eYStcdy8KICAgIGF6CiAwOiBhegogICAgYWFhegogMDogYWFhegogICAgYWEKIDA6IGFhCiAgICBhYWFhCiAwOiBhYWFhCiAgICBhYSsKIDA6IGFhCgovXmErP1x3LwogICAgYXoKIDA6IGF6CiAgICBhYWF6CiAwOiBhYQogICAgYWEKIDA6IGFhCiAgICBhYWFhCiAwOiBhYQogICAgYWErCiAwOiBhYQoKL15cZHs4fVx3ezIsfS8KICAgIDEyMzQ1Njc4OTAKIDA6IDEyMzQ1Njc4OTAKICAgIDEyMzQ1Njc4YWIKIDA6IDEyMzQ1Njc4YWIKICAgIDEyMzQ1Njc4X18KIDA6IDEyMzQ1Njc4X18KICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICAxMjM0NTY3Ck5vIG1hdGNoCgovXlthZWlvdVxkXXs0LDV9JC8KICAgIHVvaWUKIDA6IHVvaWUKICAgIDEyMzQKIDA6IDEyMzQKICAgIDEyMzQ1CiAwOiAxMjM0NQogICAgYWFhYWEKIDA6IGFhYWFhCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgMTIzNDU2Ck5vIG1hdGNoCgovXlthZWlvdVxkXXs0LDV9Py8KICAgIHVvaWUKIDA6IHVvaWUKICAgIDEyMzQKIDA6IDEyMzQKICAgIDEyMzQ1CiAwOiAxMjM0CiAgICBhYWFhYQogMDogYWFhYQogICAgMTIzNDU2CiAwOiAxMjM0CgovXEEoYWJjfGRlZik9KFwxKXsyLDN9XFovCiAgICBhYmM9YWJjYWJjCiAwOiBhYmM9YWJjYWJjCiAxOiBhYmMKIDI6IGFiYwogICAgZGVmPWRlZmRlZmRlZgogMDogZGVmPWRlZmRlZmRlZgogMTogZGVmCiAyOiBkZWYKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYmM9ZGVmZGVmCk5vIG1hdGNoCgovXihhKShiKShjKShkKShlKShmKShnKShoKShpKShqKShrKVwxMSooXDNcNClcMSg/IykyJC8KICAgIGFiY2RlZmdoaWprY2RhMgogMDogYWJjZGVmZ2hpamtjZGEyCiAxOiBhCiAyOiBiCiAzOiBjCiA0OiBkCiA1OiBlCiA2OiBmCiA3OiBnCiA4OiBoCiA5OiBpCjEwOiBqCjExOiBrCjEyOiBjZAogICAgYWJjZGVmZ2hpamtra2tjZGEyCiAwOiBhYmNkZWZnaGlqa2tra2NkYTIKIDE6IGEKIDI6IGIKIDM6IGMKIDQ6IGQKIDU6IGUKIDY6IGYKIDc6IGcKIDg6IGgKIDk6IGkKMTA6IGoKMTE6IGsKMTI6IGNkCgovKGNhdChhKHJhY3R8dG9uaWMpfGVycGlsbGFyKSkgXDEoKTIoMykvCiAgICBjYXRhcmFjdCBjYXRhcmFjdDIzCiAwOiBjYXRhcmFjdCBjYXRhcmFjdDIzCiAxOiBjYXRhcmFjdAogMjogYXJhY3QKIDM6IHJhY3QKIDQ6IAogNTogMwogICAgY2F0YXRvbmljIGNhdGF0b25pYzIzCiAwOiBjYXRhdG9uaWMgY2F0YXRvbmljMjMKIDE6IGNhdGF0b25pYwogMjogYXRvbmljCiAzOiB0b25pYwogNDogCiA1OiAzCiAgICBjYXRlcnBpbGxhciBjYXRlcnBpbGxhcjIzCiAwOiBjYXRlcnBpbGxhciBjYXRlcnBpbGxhcjIzCiAxOiBjYXRlcnBpbGxhcgogMjogZXJwaWxsYXIKIDM6IDx1bnNldD4KIDQ6IAogNTogMwoKCi9eRnJvbSArKFteIF0rKSArW2EtekEtWl1bYS16QS1aXVthLXpBLVpdICtbYS16QS1aXVthLXpBLVpdW2EtekEtWl0gK1swLTldP1swLTldICtbMC05XVswLTldOlswLTldWzAtOV0vCiAgICBGcm9tIGFiY2QgIE1vbiBTZXAgMDEgMTI6MzM6MDIgMTk5NwogMDogRnJvbSBhYmNkICBNb24gU2VwIDAxIDEyOjMzCiAxOiBhYmNkCgovXkZyb21ccytcUytccysoW2EtekEtWl17M31ccyspezJ9XGR7MSwyfVxzK1xkXGQ6XGRcZC8KICAgIEZyb20gYWJjZCAgTW9uIFNlcCAwMSAxMjozMzowMiAxOTk3CiAwOiBGcm9tIGFiY2QgIE1vbiBTZXAgMDEgMTI6MzMKIDE6IFNlcCAKICAgIEZyb20gYWJjZCAgTW9uIFNlcCAgMSAxMjozMzowMiAxOTk3CiAwOiBGcm9tIGFiY2QgIE1vbiBTZXAgIDEgMTI6MzMKIDE6IFNlcCAgCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgRnJvbSBhYmNkICBTZXAgMDEgMTI6MzM6MDIgMTk5NwpObyBtYXRjaAoKL14xMi4zNC9zCiAgICAxMlxuMzQKIDA6IDEyXHgwYTM0CiAgICAxMlxyMzQKIDA6IDEyXHgwZDM0CgovXHcrKD89XHQpLwogICAgdGhlIHF1aWNrIGJyb3duXHQgZm94CiAwOiBicm93bgoKL2Zvbyg/IWJhcikoLiopLwogICAgZm9vYmFyIGlzIGZvb2xpc2ggc2VlPwogMDogZm9vbGlzaCBzZWU/CiAxOiBsaXNoIHNlZT8KCi8oPzooPyFmb28pLi4ufF4uezAsMn0pYmFyKC4qKS8KICAgIGZvb2JhciBjcm93YmFyIGV0YwogMDogcm93YmFyIGV0YwogMTogIGV0YwogICAgYmFycmVsCiAwOiBiYXJyZWwKIDE6IHJlbAogICAgMmJhcnJlbAogMDogMmJhcnJlbAogMTogcmVsCiAgICBBIGJhcnJlbAogMDogQSBiYXJyZWwKIDE6IHJlbAoKL14oXEQqKSg/PVxkKSg/ITEyMykvCiAgICBhYmM0NTYKIDA6IGFiYwogMTogYWJjCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWJjMTIzCk5vIG1hdGNoCgovXjEyMzQoPyMgdGVzdCBuZXdsaW5lcwogIGluc2lkZSkvCiAgICAxMjM0CiAwOiAxMjM0CgovXjEyMzQgI2NvbW1lbnQgaW4gZXh0ZW5kZWQgcmUKICAveAogICAgMTIzNAogMDogMTIzNAoKLyNyaHViYXJiCiAgYWJjZC94CiAgICBhYmNkCiAwOiBhYmNkCgovXmFiY2Qjcmh1YmFyYi94CiAgICBhYmNkCiAwOiBhYmNkCgovXihhKVwxezIsM30oLikvCiAgICBhYWFiCiAwOiBhYWFiCiAxOiBhCiAyOiBiCiAgICBhYWFhYgogMDogYWFhYWIKIDE6IGEKIDI6IGIKICAgIGFhYWFhYgogMDogYWFhYWEKIDE6IGEKIDI6IGEKICAgIGFhYWFhYWIKIDA6IGFhYWFhCiAxOiBhCiAyOiBhCgovKD8hXilhYmMvCiAgICB0aGUgYWJjCiAwOiBhYmMKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYmMKTm8gbWF0Y2gKCi8oPz1eKWFiYy8KICAgIGFiYwogMDogYWJjCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgdGhlIGFiYwpObyBtYXRjaAoKL15bYWJdezEsM30oYWIqfGIpLwogICAgYWFiYmJiYgogMDogYWFiYgogMTogYgoKL15bYWJdezEsM30/KGFiKnxiKS8KICAgIGFhYmJiYmIKIDA6IGFhYmJiYmIKIDE6IGFiYmJiYgoKL15bYWJdezEsM30/KGFiKj98YikvCiAgICBhYWJiYmJiCiAwOiBhYQogMTogYQoKL15bYWJdezEsM30oYWIqP3xiKS8KICAgIGFhYmJiYmIKIDA6IGFhYmIKIDE6IGIKCi8gICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAgICAgICAgICAgICAgICAgICAgICAgICMgb3B0aW9uYWwgbGVhZGluZyBjb21tZW50Cig/OiAgICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8CiIgKD86ICAgICAgICAgICAgICAgICAgICAgICMgb3BlbmluZyBxdW90ZS4uLgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gICAgICAgICAgICAgICAgIyAgIEFueXRoaW5nIGV4Y2VwdCBiYWNrc2xhc2ggYW5kIHF1b3RlCnwgICAgICAgICAgICAgICAgICAgICAjICAgIG9yClxcIFteXHg4MC1ceGZmXSAgICAgICAgICAgIyAgIEVzY2FwZWQgc29tZXRoaW5nIChzb21ldGhpbmcgIT0gQ1IpCikqICIgICMgY2xvc2luZyBxdW90ZQopICAgICAgICAgICAgICAgICAgICAjIGluaXRpYWwgd29yZAooPzogICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogIFwuICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfAoiICg/OiAgICAgICAgICAgICAgICAgICAgICAjIG9wZW5pbmcgcXVvdGUuLi4KW15cXFx4ODAtXHhmZlxuXDAxNSJdICAgICAgICAgICAgICAgICMgICBBbnl0aGluZyBleGNlcHQgYmFja3NsYXNoIGFuZCBxdW90ZQp8ICAgICAgICAgICAgICAgICAgICAgIyAgICBvcgpcXCBbXlx4ODAtXHhmZl0gICAgICAgICAgICMgICBFc2NhcGVkIHNvbWV0aGluZyAoc29tZXRoaW5nICE9IENSKQopKiAiICAjIGNsb3NpbmcgcXVvdGUKKSAgKSogIyBmdXJ0aGVyIG9rYXksIGlmIGxlZCBieSBhIHBlcmlvZAooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICBAICAoPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgICg/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwgICBcWyAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGluaXRpYWwgc3ViZG9tYWluCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogIFwuICAgICAgICAgICAgICAgICAgICAgICAgIyBpZiBsZWQgYnkgYSBwZXJpb2QuLi4KKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICg/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwgICBcWyAgICAgICAgICAgICAgICAgICAgICAgICAjIFsKKD86IFteXFxceDgwLVx4ZmZcblwwMTVcW1xdXSB8ICBcXCBbXlx4ODAtXHhmZl0gICkqICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikgICAgICAgICAgICAgICAgICAgICAjICAgLi4uZnVydGhlciBva2F5CikqCiMgYWRkcmVzcwp8ICAgICAgICAgICAgICAgICAgICAgIyAgb3IKKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfAoiICg/OiAgICAgICAgICAgICAgICAgICAgICAjIG9wZW5pbmcgcXVvdGUuLi4KW15cXFx4ODAtXHhmZlxuXDAxNSJdICAgICAgICAgICAgICAgICMgICBBbnl0aGluZyBleGNlcHQgYmFja3NsYXNoIGFuZCBxdW90ZQp8ICAgICAgICAgICAgICAgICAgICAgIyAgICBvcgpcXCBbXlx4ODAtXHhmZl0gICAgICAgICAgICMgICBFc2NhcGVkIHNvbWV0aGluZyAoc29tZXRoaW5nICE9IENSKQopKiAiICAjIGNsb3NpbmcgcXVvdGUKKSAgICAgICAgICAgICAjIG9uZSB3b3JkLCBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5Li4uLgooPzoKW14oKTw+QCw7OiIuXFxcW1xdXHg4MC1ceGZmXDAwMC1cMDEwXDAxMi1cMDM3XSAgfCAgIyBhdG9tIGFuZCBzcGFjZSBwYXJ0cywgb3IuLi4KXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICAgICAgfCAgIyBjb21tZW50cywgb3IuLi4KCiIgKD86ICAgICAgICAgICAgICAgICAgICAgICMgb3BlbmluZyBxdW90ZS4uLgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gICAgICAgICAgICAgICAgIyAgIEFueXRoaW5nIGV4Y2VwdCBiYWNrc2xhc2ggYW5kIHF1b3RlCnwgICAgICAgICAgICAgICAgICAgICAjICAgIG9yClxcIFteXHg4MC1ceGZmXSAgICAgICAgICAgIyAgIEVzY2FwZWQgc29tZXRoaW5nIChzb21ldGhpbmcgIT0gQ1IpCikqICIgICMgY2xvc2luZyBxdW90ZQojIHF1b3RlZCBzdHJpbmdzCikqCjwgICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAgICAgICAgICAgICAgICAgICAjIGxlYWRpbmcgPAooPzogIEAgICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfCAgIFxbICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgaW5pdGlhbCBzdWJkb21haW4KKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMKKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgXC4gICAgICAgICAgICAgICAgICAgICAgICAjIGlmIGxlZCBieSBhIHBlcmlvZC4uLgooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfCAgIFxbICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKSAgICAgICAgICAgICAgICAgICAgICMgICAuLi5mdXJ0aGVyIG9rYXkKKSoKCig/OiAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgLCAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgQCAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ICAgXFsgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpbml0aWFsIHN1YmRvbWFpbgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIwooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICBcLiAgICAgICAgICAgICAgICAgICAgICAgICMgaWYgbGVkIGJ5IGEgcGVyaW9kLi4uCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ICAgXFsgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAjICAgIHN0dWZmClxdICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgXQopICAgICAgICAgICAgICAgICAgICAgIyAgIC4uLmZ1cnRoZXIgb2theQopKgopKiAjIGZ1cnRoZXIgb2theSwgaWYgbGVkIGJ5IGNvbW1hCjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgY2xvc2luZyBjb2xvbgooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICApPyAjICAgICAgIG9wdGlvbmFsIHJvdXRlCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKIiAoPzogICAgICAgICAgICAgICAgICAgICAgIyBvcGVuaW5nIHF1b3RlLi4uClteXFxceDgwLVx4ZmZcblwwMTUiXSAgICAgICAgICAgICAgICAjICAgQW55dGhpbmcgZXhjZXB0IGJhY2tzbGFzaCBhbmQgcXVvdGUKfCAgICAgICAgICAgICAgICAgICAgICMgICAgb3IKXFwgW15ceDgwLVx4ZmZdICAgICAgICAgICAjICAgRXNjYXBlZCBzb21ldGhpbmcgKHNvbWV0aGluZyAhPSBDUikKKSogIiAgIyBjbG9zaW5nIHF1b3RlCikgICAgICAgICAgICAgICAgICAgICMgaW5pdGlhbCB3b3JkCig/OiAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgXC4gICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAoPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8CiIgKD86ICAgICAgICAgICAgICAgICAgICAgICMgb3BlbmluZyBxdW90ZS4uLgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gICAgICAgICAgICAgICAgIyAgIEFueXRoaW5nIGV4Y2VwdCBiYWNrc2xhc2ggYW5kIHF1b3RlCnwgICAgICAgICAgICAgICAgICAgICAjICAgIG9yClxcIFteXHg4MC1ceGZmXSAgICAgICAgICAgIyAgIEVzY2FwZWQgc29tZXRoaW5nIChzb21ldGhpbmcgIT0gQ1IpCikqICIgICMgY2xvc2luZyBxdW90ZQopICApKiAjIGZ1cnRoZXIgb2theSwgaWYgbGVkIGJ5IGEgcGVyaW9kCig/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogIEAgICg/OiBbXDA0MFx0XSB8ICBcKAooPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgfCAgXCggKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gICkqIFwpICApKgpcKSAgKSogICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfCAgIFxbICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgaW5pdGlhbCBzdWJkb21haW4KKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMKKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgXC4gICAgICAgICAgICAgICAgICAgICAgICAjIGlmIGxlZCBieSBhIHBlcmlvZC4uLgooPzogW1wwNDBcdF0gfCAgXCgKKD86ICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICB8ICBcXCBbXlx4ODAtXHhmZl0gIHwgIFwoICg/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICApKiBcKSAgKSoKXCkgICkqICAgKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KfCAgIFxbICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKSAgICAgICAgICAgICAgICAgICAgICMgICAuLi5mdXJ0aGVyIG9rYXkKKSoKIyAgICAgICBhZGRyZXNzIHNwZWMKKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgPiAjICAgICAgICAgICAgICAgICAgdHJhaWxpbmcgPgojIG5hbWUgYW5kIGFkZHJlc3MKKSAgKD86IFtcMDQwXHRdIHwgIFwoCig/OiAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAgfCAgXFwgW15ceDgwLVx4ZmZdICB8ICBcKCAoPzogIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogXCkgICkqClwpICApKiAgICAgICAgICAgICAgICAgICAgICAgIyBvcHRpb25hbCB0cmFpbGluZyBjb21tZW50Ci94CiAgICBBbGFuIE90aGVyIDx1c2VyXEBkb20uYWluPgogMDogQWxhbiBPdGhlciA8dXNlckBkb20uYWluPgogICAgPHVzZXJcQGRvbS5haW4+CiAwOiB1c2VyQGRvbS5haW4KICAgIHVzZXJcQGRvbS5haW4KIDA6IHVzZXJAZG9tLmFpbgogICAgXCJBLiBPdGhlclwiIDx1c2VyLjEyMzRcQGRvbS5haW4+IChhIGNvbW1lbnQpCiAwOiAiQS4gT3RoZXIiIDx1c2VyLjEyMzRAZG9tLmFpbj4gKGEgY29tbWVudCkKICAgIEEuIE90aGVyIDx1c2VyLjEyMzRcQGRvbS5haW4+IChhIGNvbW1lbnQpCiAwOiAgT3RoZXIgPHVzZXIuMTIzNEBkb20uYWluPiAoYSBjb21tZW50KQogICAgXCIvcz11c2VyL291PWhvc3Qvbz1wbGFjZS9wcm1kPXV1Lnl5L2FkbWQ9IC9jPWdiL1wiXEB4NDAwLXJlLmxheQogMDogIi9zPXVzZXIvb3U9aG9zdC9vPXBsYWNlL3BybWQ9dXUueXkvYWRtZD0gL2M9Z2IvIkB4NDAwLXJlLmxheQogICAgQSBtaXNzaW5nIGFuZ2xlIDx1c2VyXEBzb21lLndoZXJlCiAwOiB1c2VyQHNvbWUud2hlcmUKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBUaGUgcXVpY2sgYnJvd24gZm94Ck5vIG1hdGNoCgovW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBvcHRpb25hbCBsZWFkaW5nIGNvbW1lbnQKKD86Cig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCiMgQXRvbQp8ICAgICAgICAgICAgICAgICAgICAgICAjICBvcgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgIgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgbm9ybWFsCig/OiAgXFwgW15ceDgwLVx4ZmZdICBbXlxcXHg4MC1ceGZmXG5cMDE1Il0gKiApKiAgICAgICAgIyAgICggc3BlY2lhbCBub3JtYWwqICkqCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIgojIFF1b3RlZCBzdHJpbmcKKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKXC4KW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KIyBBdG9tCnwgICAgICAgICAgICAgICAgICAgICAgICMgIG9yCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAiClteXFxceDgwLVx4ZmZcblwwMTUiXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICBub3JtYWwKKD86ICBcXCBbXlx4ODAtXHhmZl0gIFteXFxceDgwLVx4ZmZcblwwMTUiXSAqICkqICAgICAgICAjICAgKCBzcGVjaWFsIG5vcm1hbCogKSoKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAiCiMgUXVvdGVkIHN0cmluZwopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgYWRkaXRpb25hbCB3b3JkcwopKgpACltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCig/OgpcLgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ClxbICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBvcHRpb25hbCB0cmFpbGluZyBjb21tZW50cwopKgojIGFkZHJlc3MKfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgb3IKKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KIyBBdG9tCnwgICAgICAgICAgICAgICAgICAgICAgICMgIG9yCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAiClteXFxceDgwLVx4ZmZcblwwMTUiXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICBub3JtYWwKKD86ICBcXCBbXlx4ODAtXHhmZl0gIFteXFxceDgwLVx4ZmZcblwwMTUiXSAqICkqICAgICAgICAjICAgKCBzcGVjaWFsIG5vcm1hbCogKSoKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAiCiMgUXVvdGVkIHN0cmluZwopCiMgbGVhZGluZyB3b3JkClteKCk8PkAsOzoiLlxcXFtcXVx4ODAtXHhmZlwwMDAtXDAxMFwwMTItXDAzN10gKiAgICAgICAgICAgICAgICMgIm5vcm1hbCIgYXRvbXMgYW5kIG9yIHNwYWNlcwooPzoKKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKfAoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgIgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgbm9ybWFsCig/OiAgXFwgW15ceDgwLVx4ZmZdICBbXlxcXHg4MC1ceGZmXG5cMDE1Il0gKiApKiAgICAgICAgIyAgICggc3BlY2lhbCBub3JtYWwqICkqCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIgopICMgInNwZWNpYWwiIGNvbW1lbnQgb3IgcXVvdGVkIHN0cmluZwpbXigpPD5ALDs6Ii5cXFxbXF1ceDgwLVx4ZmZcMDAwLVwwMTBcMDEyLVwwMzddICogICAgICAgICAgICAjICBtb3JlICJub3JtYWwiCikqCjwKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyA8Cig/OgpACltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCig/OgpcLgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ClxbICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBvcHRpb25hbCB0cmFpbGluZyBjb21tZW50cwopKgooPzogLApbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgpACltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCig/OgpcLgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ClxbICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBvcHRpb25hbCB0cmFpbGluZyBjb21tZW50cwopKgopKiAgIyBhZGRpdGlvbmFsIGRvbWFpbnMKOgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCik/ICAgICAjICAgICAgIG9wdGlvbmFsIHJvdXRlCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCiMgQXRvbQp8ICAgICAgICAgICAgICAgICAgICAgICAjICBvcgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgIgpbXlxcXHg4MC1ceGZmXG5cMDE1Il0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgbm9ybWFsCig/OiAgXFwgW15ceDgwLVx4ZmZdICBbXlxcXHg4MC1ceGZmXG5cMDE1Il0gKiApKiAgICAgICAgIyAgICggc3BlY2lhbCBub3JtYWwqICkqCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIgojIFF1b3RlZCBzdHJpbmcKKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKXC4KW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KKD86ClteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKyAgICAjIHNvbWUgbnVtYmVyIG9mIGF0b20gY2hhcmFjdGVycy4uLgooPyFbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSkgIyAuLm5vdCBmb2xsb3dlZCBieSBzb21ldGhpbmcgdGhhdCBjb3VsZCBiZSBwYXJ0IG9mIGFuIGF0b20KIyBBdG9tCnwgICAgICAgICAgICAgICAgICAgICAgICMgIG9yCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAiClteXFxceDgwLVx4ZmZcblwwMTUiXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICBub3JtYWwKKD86ICBcXCBbXlx4ODAtXHhmZl0gIFteXFxceDgwLVx4ZmZcblwwMTUiXSAqICkqICAgICAgICAjICAgKCBzcGVjaWFsIG5vcm1hbCogKSoKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAiCiMgUXVvdGVkIHN0cmluZwopCltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCiMgYWRkaXRpb25hbCB3b3JkcwopKgpACltcMDQwXHRdKiAgICAgICAgICAgICAgICAgICAgIyBOYWIgd2hpdGVzcGFjZS4KKD86ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAoCig/OiAgXFwgW15ceDgwLVx4ZmZdICB8ClwoICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgIG5vcm1hbCoKKD86ICBcXCBbXlx4ODAtXHhmZl0gICBbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogKSogICAgICAgICMgICAgIChzcGVjaWFsIG5vcm1hbCopKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICkKKSAgICAjICAgICAgICAgc3BlY2lhbApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgIG5vcm1hbCoKKSogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICkqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICkKW1wwNDBcdF0qICkqICAgICMgSWYgY29tbWVudCBmb3VuZCwgYWxsb3cgbW9yZSBzcGFjZXMuCig/OgpbXihcMDQwKTw+QCw7OiIuXFxcW1xdXDAwMC1cMDM3XHg4MC1ceGZmXSsgICAgIyBzb21lIG51bWJlciBvZiBhdG9tIGNoYXJhY3RlcnMuLi4KKD8hW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0pICMgLi5ub3QgZm9sbG93ZWQgYnkgc29tZXRoaW5nIHRoYXQgY291bGQgYmUgcGFydCBvZiBhbiBhdG9tCnwKXFsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBbCig/OiBbXlxcXHg4MC1ceGZmXG5cMDE1XFtcXV0gfCAgXFwgW15ceDgwLVx4ZmZdICApKiAgICAgIyAgICBzdHVmZgpcXSAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgIF0KKQpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgojIG9wdGlvbmFsIHRyYWlsaW5nIGNvbW1lbnRzCig/OgpcLgpbXDA0MFx0XSogICAgICAgICAgICAgICAgICAgICMgTmFiIHdoaXRlc3BhY2UuCig/OgpcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICgKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgKAooPzogIFxcIFteXHg4MC1ceGZmXSAgfApcKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICBub3JtYWwqCig/OiAgXFwgW15ceDgwLVx4ZmZdICAgW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICkqICAgICAgICAjICAgICAoc3BlY2lhbCBub3JtYWwqKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICAgICAgICApCikgICAgIyAgICAgICAgIHNwZWNpYWwKW15cXFx4ODAtXHhmZlxuXDAxNSgpXSAqICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICBub3JtYWwqCikqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICApKgpcKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICApCltcMDQwXHRdKiApKiAgICAjIElmIGNvbW1lbnQgZm91bmQsIGFsbG93IG1vcmUgc3BhY2VzLgooPzoKW14oXDA0MCk8PkAsOzoiLlxcXFtcXVwwMDAtXDAzN1x4ODAtXHhmZl0rICAgICMgc29tZSBudW1iZXIgb2YgYXRvbSBjaGFyYWN0ZXJzLi4uCig/IVteKFwwNDApPD5ALDs6Ii5cXFxbXF1cMDAwLVwwMzdceDgwLVx4ZmZdKSAjIC4ubm90IGZvbGxvd2VkIGJ5IHNvbWV0aGluZyB0aGF0IGNvdWxkIGJlIHBhcnQgb2YgYW4gYXRvbQp8ClxbICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgWwooPzogW15cXFx4ODAtXHhmZlxuXDAxNVxbXF1dIHwgIFxcIFteXHg4MC1ceGZmXSAgKSogICAgICMgICAgc3R1ZmYKXF0gICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICBdCikKW1wwNDBcdF0qICAgICAgICAgICAgICAgICAgICAjIE5hYiB3aGl0ZXNwYWNlLgooPzoKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAoClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICgKKD86ICBcXCBbXlx4ODAtXHhmZl0gIHwKXCggICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgKApbXlxcXHg4MC1ceGZmXG5cMDE1KCldICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgbm9ybWFsKgooPzogIFxcIFteXHg4MC1ceGZmXSAgIFteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiApKiAgICAgICAgIyAgICAgKHNwZWNpYWwgbm9ybWFsKikqClwpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyAgICAgICAgICAgICAgICAgICAgICAgKQopICAgICMgICAgICAgICBzcGVjaWFsClteXFxceDgwLVx4ZmZcblwwMTUoKV0gKiAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgbm9ybWFsKgopKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgKSoKXCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgICAgICAgICAgICAgICAgKQpbXDA0MFx0XSogKSogICAgIyBJZiBjb21tZW50IGZvdW5kLCBhbGxvdyBtb3JlIHNwYWNlcy4KIyBvcHRpb25hbCB0cmFpbGluZyBjb21tZW50cwopKgojICAgICAgIGFkZHJlc3Mgc3BlYwo+ICAgICAgICAgICAgICAgICAgICAjICAgICAgICAgICAgICAgICA+CiMgbmFtZSBhbmQgYWRkcmVzcwopCi94CiAgICBBbGFuIE90aGVyIDx1c2VyXEBkb20uYWluPgogMDogQWxhbiBPdGhlciA8dXNlckBkb20uYWluPgogICAgPHVzZXJcQGRvbS5haW4+CiAwOiB1c2VyQGRvbS5haW4KICAgIHVzZXJcQGRvbS5haW4KIDA6IHVzZXJAZG9tLmFpbgogICAgXCJBLiBPdGhlclwiIDx1c2VyLjEyMzRcQGRvbS5haW4+IChhIGNvbW1lbnQpCiAwOiAiQS4gT3RoZXIiIDx1c2VyLjEyMzRAZG9tLmFpbj4KICAgIEEuIE90aGVyIDx1c2VyLjEyMzRcQGRvbS5haW4+IChhIGNvbW1lbnQpCiAwOiAgT3RoZXIgPHVzZXIuMTIzNEBkb20uYWluPgogICAgXCIvcz11c2VyL291PWhvc3Qvbz1wbGFjZS9wcm1kPXV1Lnl5L2FkbWQ9IC9jPWdiL1wiXEB4NDAwLXJlLmxheQogMDogIi9zPXVzZXIvb3U9aG9zdC9vPXBsYWNlL3BybWQ9dXUueXkvYWRtZD0gL2M9Z2IvIkB4NDAwLXJlLmxheQogICAgQSBtaXNzaW5nIGFuZ2xlIDx1c2VyXEBzb21lLndoZXJlCiAwOiB1c2VyQHNvbWUud2hlcmUKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBUaGUgcXVpY2sgYnJvd24gZm94Ck5vIG1hdGNoCgovYWJjXDBkZWZcMDBwcXJcMDAweHl6XDAwMDBBQi8KICAgIGFiY1wwZGVmXDAwcHFyXDAwMHh5elwwMDAwQUIKIDA6IGFiY1x4MDBkZWZceDAwcHFyXHgwMHh5elx4MDAwQUIKICAgIGFiYzQ1NiBhYmNcMGRlZlwwMHBxclwwMDB4eXpcMDAwMEFCQ0RFCiAwOiBhYmNceDAwZGVmXHgwMHBxclx4MDB4eXpceDAwMEFCCgovYWJjXHgwZGVmXHgwMHBxclx4MDAweHl6XHgwMDAwQUIvCiAgICBhYmNceDBkZWZceDAwcHFyXHgwMDB4eXpceDAwMDBBQgogMDogYWJjXHgwZGVmXHgwMHBxclx4MDAweHl6XHgwMDAwQUIKICAgIGFiYzQ1NiBhYmNceDBkZWZceDAwcHFyXHgwMDB4eXpceDAwMDBBQkNERQogMDogYWJjXHgwZGVmXHgwMHBxclx4MDAweHl6XHgwMDAwQUIKCi9eW1wwMDAtXDAzN10vCiAgICBcMEEKIDA6IFx4MDAKICAgIFwwMUIKIDA6IFx4MDEKICAgIFwwMzdDCiAwOiBceDFmCgovXDAqLwogICAgXDBcMFwwXDAKIDA6IFx4MDBceDAwXHgwMFx4MDAKCi9BXHgwezIsM31aLwogICAgVGhlIEFceDBceDBaCiAwOiBBXHgwMFx4MDBaCiAgICBBbiBBXDBceDBcMFoKIDA6IEFceDAwXHgwMFx4MDBaCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgQVwwWgpObyBtYXRjaAogICAgQVwwXHgwXDBceDBaCk5vIG1hdGNoCgovXihjb3d8KVwxKGJlbGwpLwogICAgY293Y293YmVsbAogMDogY293Y293YmVsbAogMTogY293CiAyOiBiZWxsCiAgICBiZWxsCiAwOiBiZWxsCiAxOiAKIDI6IGJlbGwKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBjb3diZWxsCk5vIG1hdGNoCgovXlxzLwogICAgXDA0MGFiYwogMDogIAogICAgXHgwY2FiYwogMDogXHgwYwogICAgXG5hYmMKIDA6IFx4MGEKICAgIFxyYWJjCiAwOiBceDBkCiAgICBcdGFiYwogMDogXHgwOQogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFiYwpObyBtYXRjaAoKL15hCWIKICANICAMICBjL3gKICAgIGFiYwogMDogYWJjCgovXihhfClcMSpiLwogICAgYWIKIDA6IGFiCiAxOiBhCiAgICBhYWFhYgogMDogYWFhYWIKIDE6IGEKICAgIGIKIDA6IGIKIDE6IAogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFjYgpObyBtYXRjaAoKL14oYXwpXDErYi8KICAgIGFhYgogMDogYWFiCiAxOiBhCiAgICBhYWFhYgogMDogYWFhYWIKIDE6IGEKICAgIGIKIDA6IGIKIDE6IAogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFiCk5vIG1hdGNoCgovXihhfClcMT9iLwogICAgYWIKIDA6IGFiCiAxOiBhCiAgICBhYWIKIDA6IGFhYgogMTogYQogICAgYgogMDogYgogMTogCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWNiCk5vIG1hdGNoCgovXihhfClcMXsyfWIvCiAgICBhYWFiCiAwOiBhYWFiCiAxOiBhCiAgICBiCiAwOiBiCiAxOiAKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYgpObyBtYXRjaAogICAgYWFiCk5vIG1hdGNoCiAgICBhYWFhYgpObyBtYXRjaAoKL14oYXwpXDF7MiwzfWIvCiAgICBhYWFiCiAwOiBhYWFiCiAxOiBhCiAgICBhYWFhYgogMDogYWFhYWIKIDE6IGEKICAgIGIKIDA6IGIKIDE6IAogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFiCk5vIG1hdGNoCiAgICBhYWIKTm8gbWF0Y2gKICAgIGFhYWFhYgpObyBtYXRjaAoKL2FiezEsM31iYy8KICAgIGFiYmJiYwogMDogYWJiYmJjCiAgICBhYmJiYwogMDogYWJiYmMKICAgIGFiYmMKIDA6IGFiYmMKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYmMKTm8gbWF0Y2gKICAgIGFiYmJiYmMKTm8gbWF0Y2gKCi8oW14uXSopXC4oW146XSopOltUIF0rKC4qKS8KICAgIHRyYWNrMS50aXRsZTpUQmxhaCBibGFoIGJsYWgKIDA6IHRyYWNrMS50aXRsZTpUQmxhaCBibGFoIGJsYWgKIDE6IHRyYWNrMQogMjogdGl0bGUKIDM6IEJsYWggYmxhaCBibGFoCgovKFteLl0qKVwuKFteOl0qKTpbVCBdKyguKikvaQogICAgdHJhY2sxLnRpdGxlOlRCbGFoIGJsYWggYmxhaAogMDogdHJhY2sxLnRpdGxlOlRCbGFoIGJsYWggYmxhaAogMTogdHJhY2sxCiAyOiB0aXRsZQogMzogQmxhaCBibGFoIGJsYWgKCi8oW14uXSopXC4oW146XSopOlt0IF0rKC4qKS9pCiAgICB0cmFjazEudGl0bGU6VEJsYWggYmxhaCBibGFoCiAwOiB0cmFjazEudGl0bGU6VEJsYWggYmxhaCBibGFoCiAxOiB0cmFjazEKIDI6IHRpdGxlCiAzOiBCbGFoIGJsYWggYmxhaAoKL15bVy1jXSskLwogICAgV1hZX15hYmMKIDA6IFdYWV9eYWJjCiAgICAqKipGYWlsZXJzCk5vIG1hdGNoCiAgICB3eHkKTm8gbWF0Y2gKCi9eW1ctY10rJC9pCiAgICBXWFlfXmFiYwogMDogV1hZX15hYmMKICAgIHd4eV9eQUJDCiAwOiB3eHlfXkFCQwoKL15bXHgzZi1ceDVGXSskL2kKICAgIFdYWV9eYWJjCiAwOiBXWFlfXmFiYwogICAgd3h5X15BQkMKIDA6IHd4eV9eQUJDCgovXmFiYyQvbQogICAgYWJjCiAwOiBhYmMKICAgIHFxcVxuYWJjCiAwOiBhYmMKICAgIGFiY1xuenp6CiAwOiBhYmMKICAgIHFxcVxuYWJjXG56enoKIDA6IGFiYwoKL15hYmMkLwogICAgYWJjCiAwOiBhYmMKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBxcXFcbmFiYwpObyBtYXRjaAogICAgYWJjXG56enoKTm8gbWF0Y2gKICAgIHFxcVxuYWJjXG56enoKTm8gbWF0Y2gKCi9cQWFiY1xaL20KICAgIGFiYwogMDogYWJjCiAgICBhYmNcbiAKIDA6IGFiYwogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIHFxcVxuYWJjCk5vIG1hdGNoCiAgICBhYmNcbnp6egpObyBtYXRjaAogICAgcXFxXG5hYmNcbnp6egpObyBtYXRjaAogICAgCi9cQSguKSpcWi9zCiAgICBhYmNcbmRlZgogMDogYWJjXHgwYWRlZgogMTogZgoKL1xBKC4pKlxaL20KICAgICoqKiBGYWlsZXJzCiAwOiAqKiogRmFpbGVycwogMTogcwogICAgYWJjXG5kZWYKTm8gbWF0Y2gKCi8oPzpiKXwoPzo6KykvCiAgICBiOjpjCiAwOiBiCiAgICBjOjpiCiAwOiA6OgoKL1stYXpdKy8KICAgIGF6LQogMDogYXotCiAgICAqKiogRmFpbGVycwogMDogYQogICAgYgpObyBtYXRjaAoKL1thei1dKy8KICAgIHphLQogMDogemEtCiAgICAqKiogRmFpbGVycwogMDogYQogICAgYgpObyBtYXRjaAoKL1thXC16XSsvCiAgICBhLXoKIDA6IGEtegogICAgKioqIEZhaWxlcnMKIDA6IGEKICAgIGIKTm8gbWF0Y2gKCi9bYS16XSsvCiAgICBhYmNkeHl6CiAwOiBhYmNkeHl6CgovW1xkLV0rLwogICAgMTItMzQKIDA6IDEyLTM0CiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWFhCk5vIG1hdGNoCgovW1xkLXpdKy8KICAgIDEyLTM0egogMDogMTItMzR6CiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWFhCk5vIG1hdGNoCgovXHg1Yy8KICAgIFxcCiAwOiBcCgovXHgyMFovCiAgICB0aGUgWm9vCiAwOiAgWgogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIFp1bHUKTm8gbWF0Y2gKCi8oYWJjKVwxL2kKICAgIGFiY2FiYwogMDogYWJjYWJjCiAxOiBhYmMKICAgIEFCQ2FiYwogMDogQUJDYWJjCiAxOiBBQkMKICAgIGFiY0FCQwogMDogYWJjQUJDCiAxOiBhYmMKCi9hYnszY2QvCiAgICBhYnszY2QKIDA6IGFiezNjZAoKL2FiezMsY2QvCiAgICBhYnszLGNkCiAwOiBhYnszLGNkCgovYWJ7Myw0YX1jZC8KICAgIGFiezMsNGF9Y2QKIDA6IGFiezMsNGF9Y2QKCi97NCw1YX1iYy8KICAgIHs0LDVhfWJjCiAwOiB7NCw1YX1iYwoKL15hLmIvCiAgICBhXHJiCiAwOiBhXHgwZGIKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhXG5iCk5vIG1hdGNoCgovYWJjJC8KICAgIGFiYwogMDogYWJjCiAgICBhYmNcbgogMDogYWJjCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWJjXG5kZWYKTm8gbWF0Y2gKCi8oYWJjKVwxMjMvCiAgICBhYmNceDUzCiAwOiBhYmNTCiAxOiBhYmMKCi8oYWJjKVwyMjMvCiAgICBhYmNceDkzCiAwOiBhYmNceDkzCiAxOiBhYmMKCi8oYWJjKVwzMjMvCiAgICBhYmNceGQzCiAwOiBhYmNceGQzCiAxOiBhYmMKCi8oYWJjKVw1MDAvCiAgICBhYmNceDQwCiAwOiBhYmNACiAxOiBhYmMKICAgIGFiY1wxMDAKIDA6IGFiY0AKIDE6IGFiYwoKLyhhYmMpXDUwMDAvCiAgICBhYmNceDQwMAogMDogYWJjQDAKIDE6IGFiYwogICAgYWJjXHg0MFx4MzAKIDA6IGFiY0AwCiAxOiBhYmMKICAgIGFiY1wxMDAwCiAwOiBhYmNAMAogMTogYWJjCiAgICBhYmNcMTAwXHgzMAogMDogYWJjQDAKIDE6IGFiYwogICAgYWJjXDEwMFwwNjAKIDA6IGFiY0AwCiAxOiBhYmMKICAgIGFiY1wxMDBcNjAKIDA6IGFiY0AwCiAxOiBhYmMKCi9hYmNcODEvCiAgICBhYmNcMDgxCiAwOiBhYmNceDAwODEKICAgIGFiY1wwXHgzOFx4MzEKIDA6IGFiY1x4MDA4MQoKL2FiY1w5MS8KICAgIGFiY1wwOTEKIDA6IGFiY1x4MDA5MQogICAgYWJjXDBceDM5XHgzMQogMDogYWJjXHgwMDkxCgovKGEpKGIpKGMpKGQpKGUpKGYpKGcpKGgpKGkpKGopKGspKGwpXDEyXDEyMy8KICAgIGFiY2RlZmdoaWprbGxTCiAwOiBhYmNkZWZnaGlqa2xsUwogMTogYQogMjogYgogMzogYwogNDogZAogNTogZQogNjogZgogNzogZwogODogaAogOTogaQoxMDogagoxMTogawoxMjogbAoKLyhhKShiKShjKShkKShlKShmKShnKShoKShpKShqKShrKVwxMlwxMjMvCiAgICBhYmNkZWZnaGlqa1wxMlMKIDA6IGFiY2RlZmdoaWprXHgwYVMKIDE6IGEKIDI6IGIKIDM6IGMKIDQ6IGQKIDU6IGUKIDY6IGYKIDc6IGcKIDg6IGgKIDk6IGkKMTA6IGoKMTE6IGsKCi9hYlxnZGVmLwogICAgYWJnZGVmCiAwOiBhYmdkZWYKCi9hezB9YmMvCiAgICBiYwogMDogYmMKCi8oYXwoYmMpKXswLDB9P3h5ei8KICAgIHh5egogMDogeHl6CgovYWJjW1wxMF1kZS8KICAgIGFiY1wwMTBkZQogMDogYWJjXHgwOGRlCgovYWJjW1wxXWRlLwogICAgYWJjXDFkZQogMDogYWJjXHgwMWRlCgovKGFiYylbXDFdZGUvCiAgICBhYmNcMWRlCiAwOiBhYmNceDAxZGUKIDE6IGFiYwoKL2EuYig/cykvCiAgICBhXG5iCiAwOiBhXHgwYWIKCi9eKFteYV0pKFteXGJdKShbXmNdKikoW15kXXszLDR9KS8KICAgIGJhTk9UY2NjY2QKIDA6IGJhTk9UY2NjYwogMTogYgogMjogYQogMzogTk9UCiA0OiBjY2NjCiAgICBiYU5PVGNjY2QKIDA6IGJhTk9UY2NjCiAxOiBiCiAyOiBhCiAzOiBOT1QKIDQ6IGNjYwogICAgYmFOT1RjY2QKIDA6IGJhTk9UY2MKIDE6IGIKIDI6IGEKIDM6IE5PCiA0OiBUY2MKICAgIGJhY2NjZAogMDogYmFjY2MKIDE6IGIKIDI6IGEKIDM6IAogNDogY2NjCiAgICAqKiogRmFpbGVycwogMDogKioqIEZhaWxlcnMKIDE6ICoKIDI6ICoKIDM6ICogRmFpbAogNDogZXJzCiAgICBhbnl0aGluZwpObyBtYXRjaAogICAgYlxiYyAgIApObyBtYXRjaAogICAgYmFjY2QKTm8gbWF0Y2gKCi9bXmFdLwogICAgQWJjCiAwOiBBCiAgCi9bXmFdL2kKICAgIEFiYyAKIDA6IGIKCi9bXmFdKy8KICAgIEFBQWFBYmMKIDA6IEFBQQogIAovW15hXSsvaQogICAgQUFBYUFiYyAKIDA6IGJjCgovW15hXSsvCiAgICBiYmJcbmNjYwogMDogYmJiXHgwYWNjYwogICAKL1tea10kLwogICAgYWJjCiAwOiBjCiAgICAqKiogRmFpbGVycwogMDogcwogICAgYWJrICAgCk5vIG1hdGNoCiAgIAovW15rXXsyLDN9JC8KICAgIGFiYwogMDogYWJjCiAgICBrYmMKIDA6IGJjCiAgICBrYWJjIAogMDogYWJjCiAgICAqKiogRmFpbGVycwogMDogZXJzCiAgICBhYmsKTm8gbWF0Y2gKICAgIGFrYgpObyBtYXRjaAogICAgYWtrIApObyBtYXRjaAoKL15cZHs4LH1cQC4rW15rXSQvCiAgICAxMjM0NTY3OFxAYS5iLmMuZAogMDogMTIzNDU2NzhAYS5iLmMuZAogICAgMTIzNDU2Nzg5XEB4LnkuegogMDogMTIzNDU2Nzg5QHgueS56CiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgMTIzNDU2NzhcQHgueS51awpObyBtYXRjaAogICAgMTIzNDU2N1xAYS5iLmMuZCAgICAgICAKTm8gbWF0Y2gKCi8oYSlcMXs4LH0vCiAgICBhYWFhYWFhYWEKIDA6IGFhYWFhYWFhYQogMTogYQogICAgYWFhYWFhYWFhYQogMDogYWFhYWFhYWFhYQogMTogYQogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFhYWFhYWEgICAKTm8gbWF0Y2gKCi9bXmFdLwogICAgYWFhYWJjZAogMDogYgogICAgYWFBYWJjZCAKIDA6IEEKCi9bXmFdL2kKICAgIGFhYWFiY2QKIDA6IGIKICAgIGFhQWFiY2QgCiAwOiBiCgovW15hel0vCiAgICBhYWFhYmNkCiAwOiBiCiAgICBhYUFhYmNkIAogMDogQQoKL1teYXpdL2kKICAgIGFhYWFiY2QKIDA6IGIKICAgIGFhQWFiY2QgCiAwOiBiCgovXDAwMFwwMDFcMDAyXDAwM1wwMDRcMDA1XDAwNlwwMDdcMDEwXDAxMVwwMTJcMDEzXDAxNFwwMTVcMDE2XDAxN1wwMjBcMDIxXDAyMlwwMjNcMDI0XDAyNVwwMjZcMDI3XDAzMFwwMzFcMDMyXDAzM1wwMzRcMDM1XDAzNlwwMzdcMDQwXDA0MVwwNDJcMDQzXDA0NFwwNDVcMDQ2XDA0N1wwNTBcMDUxXDA1MlwwNTNcMDU0XDA1NVwwNTZcMDU3XDA2MFwwNjFcMDYyXDA2M1wwNjRcMDY1XDA2NlwwNjdcMDcwXDA3MVwwNzJcMDczXDA3NFwwNzVcMDc2XDA3N1wxMDBcMTAxXDEwMlwxMDNcMTA0XDEwNVwxMDZcMTA3XDExMFwxMTFcMTEyXDExM1wxMTRcMTE1XDExNlwxMTdcMTIwXDEyMVwxMjJcMTIzXDEyNFwxMjVcMTI2XDEyN1wxMzBcMTMxXDEzMlwxMzNcMTM0XDEzNVwxMzZcMTM3XDE0MFwxNDFcMTQyXDE0M1wxNDRcMTQ1XDE0NlwxNDdcMTUwXDE1MVwxNTJcMTUzXDE1NFwxNTVcMTU2XDE1N1wxNjBcMTYxXDE2MlwxNjNcMTY0XDE2NVwxNjZcMTY3XDE3MFwxNzFcMTcyXDE3M1wxNzRcMTc1XDE3NlwxNzdcMjAwXDIwMVwyMDJcMjAzXDIwNFwyMDVcMjA2XDIwN1wyMTBcMjExXDIxMlwyMTNcMjE0XDIxNVwyMTZcMjE3XDIyMFwyMjFcMjIyXDIyM1wyMjRcMjI1XDIyNlwyMjdcMjMwXDIzMVwyMzJcMjMzXDIzNFwyMzVcMjM2XDIzN1wyNDBcMjQxXDI0MlwyNDNcMjQ0XDI0NVwyNDZcMjQ3XDI1MFwyNTFcMjUyXDI1M1wyNTRcMjU1XDI1NlwyNTdcMjYwXDI2MVwyNjJcMjYzXDI2NFwyNjVcMjY2XDI2N1wyNzBcMjcxXDI3MlwyNzNcMjc0XDI3NVwyNzZcMjc3XDMwMFwzMDFcMzAyXDMwM1wzMDRcMzA1XDMwNlwzMDdcMzEwXDMxMVwzMTJcMzEzXDMxNFwzMTVcMzE2XDMxN1wzMjBcMzIxXDMyMlwzMjNcMzI0XDMyNVwzMjZcMzI3XDMzMFwzMzFcMzMyXDMzM1wzMzRcMzM1XDMzNlwzMzdcMzQwXDM0MVwzNDJcMzQzXDM0NFwzNDVcMzQ2XDM0N1wzNTBcMzUxXDM1MlwzNTNcMzU0XDM1NVwzNTZcMzU3XDM2MFwzNjFcMzYyXDM2M1wzNjRcMzY1XDM2NlwzNjdcMzcwXDM3MVwzNzJcMzczXDM3NFwzNzVcMzc2XDM3Ny8KIFwwMDBcMDAxXDAwMlwwMDNcMDA0XDAwNVwwMDZcMDA3XDAxMFwwMTFcMDEyXDAxM1wwMTRcMDE1XDAxNlwwMTdcMDIwXDAyMVwwMjJcMDIzXDAyNFwwMjVcMDI2XDAyN1wwMzBcMDMxXDAzMlwwMzNcMDM0XDAzNVwwMzZcMDM3XDA0MFwwNDFcMDQyXDA0M1wwNDRcMDQ1XDA0NlwwNDdcMDUwXDA1MVwwNTJcMDUzXDA1NFwwNTVcMDU2XDA1N1wwNjBcMDYxXDA2MlwwNjNcMDY0XDA2NVwwNjZcMDY3XDA3MFwwNzFcMDcyXDA3M1wwNzRcMDc1XDA3NlwwNzdcMTAwXDEwMVwxMDJcMTAzXDEwNFwxMDVcMTA2XDEwN1wxMTBcMTExXDExMlwxMTNcMTE0XDExNVwxMTZcMTE3XDEyMFwxMjFcMTIyXDEyM1wxMjRcMTI1XDEyNlwxMjdcMTMwXDEzMVwxMzJcMTMzXDEzNFwxMzVcMTM2XDEzN1wxNDBcMTQxXDE0MlwxNDNcMTQ0XDE0NVwxNDZcMTQ3XDE1MFwxNTFcMTUyXDE1M1wxNTRcMTU1XDE1NlwxNTdcMTYwXDE2MVwxNjJcMTYzXDE2NFwxNjVcMTY2XDE2N1wxNzBcMTcxXDE3MlwxNzNcMTc0XDE3NVwxNzZcMTc3XDIwMFwyMDFcMjAyXDIwM1wyMDRcMjA1XDIwNlwyMDdcMjEwXDIxMVwyMTJcMjEzXDIxNFwyMTVcMjE2XDIxN1wyMjBcMjIxXDIyMlwyMjNcMjI0XDIyNVwyMjZcMjI3XDIzMFwyMzFcMjMyXDIzM1wyMzRcMjM1XDIzNlwyMzdcMjQwXDI0MVwyNDJcMjQzXDI0NFwyNDVcMjQ2XDI0N1wyNTBcMjUxXDI1MlwyNTNcMjU0XDI1NVwyNTZcMjU3XDI2MFwyNjFcMjYyXDI2M1wyNjRcMjY1XDI2NlwyNjdcMjcwXDI3MVwyNzJcMjczXDI3NFwyNzVcMjc2XDI3N1wzMDBcMzAxXDMwMlwzMDNcMzA0XDMwNVwzMDZcMzA3XDMxMFwzMTFcMzEyXDMxM1wzMTRcMzE1XDMxNlwzMTdcMzIwXDMyMVwzMjJcMzIzXDMyNFwzMjVcMzI2XDMyN1wzMzBcMzMxXDMzMlwzMzNcMzM0XDMzNVwzMzZcMzM3XDM0MFwzNDFcMzQyXDM0M1wzNDRcMzQ1XDM0NlwzNDdcMzUwXDM1MVwzNTJcMzUzXDM1NFwzNTVcMzU2XDM1N1wzNjBcMzYxXDM2MlwzNjNcMzY0XDM2NVwzNjZcMzY3XDM3MFwzNzFcMzcyXDM3M1wzNzRcMzc1XDM3NlwzNzcKIDA6IFx4MDBceDAxXHgwMlx4MDNceDA0XHgwNVx4MDZceDA3XHgwOFx4MDlceDBhXHgwYlx4MGNceDBkXHgwZVx4MGZceDEwXHgxMVx4MTJceDEzXHgxNFx4MTVceDE2XHgxN1x4MThceDE5XHgxYVx4MWJceDFjXHgxZFx4MWVceDFmICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5ceDdmXHg4MFx4ODFceDgyXHg4M1x4ODRceDg1XHg4Nlx4ODdceDg4XHg4OVx4OGFceDhiXHg4Y1x4OGRceDhlXHg4Zlx4OTBceDkxXHg5Mlx4OTNceDk0XHg5NVx4OTZceDk3XHg5OFx4OTlceDlhXHg5Ylx4OWNceDlkXHg5ZVx4OWZceGEwXHhhMVx4YTJceGEzXHhhNFx4YTVceGE2XHhhN1x4YThceGE5XHhhYVx4YWJceGFjXHhhZFx4YWVceGFmXHhiMFx4YjFceGIyXHhiM1x4YjRceGI1XHhiNlx4YjdceGI4XHhiOVx4YmFceGJiXHhiY1x4YmRceGJlXHhiZlx4YzBceGMxXHhjMlx4YzNceGM0XHhjNVx4YzZceGM3XHhjOFx4YzlceGNhXHhjYlx4Y2NceGNkXHhjZVx4Y2ZceGQwXHhkMVx4ZDJceGQzXHhkNFx4ZDVceGQ2XHhkN1x4ZDhceGQ5XHhkYVx4ZGJceGRjXHhkZFx4ZGVceGRmXHhlMFx4ZTFceGUyXHhlM1x4ZTRceGU1XHhlNlx4ZTdceGU4XHhlOVx4ZWFceGViXHhlY1x4ZWRceGVlXHhlZlx4ZjBceGYxXHhmMlx4ZjNceGY0XHhmNVx4ZjZceGY3XHhmOFx4ZjlceGZhXHhmYlx4ZmNceGZkXHhmZVx4ZmYKCi9QW14qXVRBSVJFW14qXXsxLDZ9P0xMLwogICAgeHh4eHh4eHh4eHhQU1RBSVJFSVNMTHh4eHh4eHh4eAogMDogUFNUQUlSRUlTTEwKCi9QW14qXVRBSVJFW14qXXsxLH0/TEwvCiAgICB4eHh4eHh4eHh4eFBTVEFJUkVJU0xMeHh4eHh4eHh4CiAwOiBQU1RBSVJFSVNMTAoKLyhcLlxkXGRbMS05XT8pXGQrLwogICAgMS4yMzAwMDM5MzgKIDA6IC4yMzAwMDM5MzgKIDE6IC4yMwogICAgMS44NzUwMDAyODIgICAKIDA6IC44NzUwMDAyODIKIDE6IC44NzUKICAgIDEuMjM1ICAKIDA6IC4yMzUKIDE6IC4yMwogICAgICAgICAgICAgICAgICAKLyhcLlxkXGQoKD89MCl8XGQoPz1cZCkpKS8KICAgIDEuMjMwMDAzOTM4ICAgICAgCiAwOiAuMjMKIDE6IC4yMwogMjogCiAgICAxLjg3NTAwMDI4MgogMDogLjg3NQogMTogLjg3NQogMjogNQogICAgKioqIEZhaWxlcnMgCk5vIG1hdGNoCiAgICAxLjIzNSAKTm8gbWF0Y2gKICAgIAovYSg/KWIvCiAgICBhYiAKIDA6IGFiCiAKL1xiKGZvbylccysoXHcrKS9pCiAgICBGb29kIGlzIG9uIHRoZSBmb28gdGFibGUKIDA6IGZvbyB0YWJsZQogMTogZm9vCiAyOiB0YWJsZQogICAgCi9mb28oLiopYmFyLwogICAgVGhlIGZvb2QgaXMgdW5kZXIgdGhlIGJhciBpbiB0aGUgYmFybi4KIDA6IGZvb2QgaXMgdW5kZXIgdGhlIGJhciBpbiB0aGUgYmFyCiAxOiBkIGlzIHVuZGVyIHRoZSBiYXIgaW4gdGhlIAogICAgCi9mb28oLio/KWJhci8gIAogICAgVGhlIGZvb2QgaXMgdW5kZXIgdGhlIGJhciBpbiB0aGUgYmFybi4KIDA6IGZvb2QgaXMgdW5kZXIgdGhlIGJhcgogMTogZCBpcyB1bmRlciB0aGUgCgovKC4qKShcZCopLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAxOiBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMjogCiAgICAKLyguKikoXGQrKS8KICAgIEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAwOiBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMTogSSBoYXZlIDIgbnVtYmVyczogNTMxNAogMjogNwogCi8oLio/KShcZCopLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IAogMTogCiAyOiAKCi8oLio/KShcZCspLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyCiAxOiBJIGhhdmUgCiAyOiAyCgovKC4qKShcZCspJC8KICAgIEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAwOiBJIGhhdmUgMiBudW1iZXJzOiA1MzE0NwogMTogSSBoYXZlIDIgbnVtYmVyczogNTMxNAogMjogNwoKLyguKj8pKFxkKykkLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAxOiBJIGhhdmUgMiBudW1iZXJzOiAKIDI6IDUzMTQ3CgovKC4qKVxiKFxkKykkLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAxOiBJIGhhdmUgMiBudW1iZXJzOiAKIDI6IDUzMTQ3CgovKC4qXEQpKFxkKykkLwogICAgSSBoYXZlIDIgbnVtYmVyczogNTMxNDcKIDA6IEkgaGF2ZSAyIG51bWJlcnM6IDUzMTQ3CiAxOiBJIGhhdmUgMiBudW1iZXJzOiAKIDI6IDUzMTQ3CgovXlxEKig/ITEyMykvCiAgICBBQkMxMjMKIDA6IEFCCiAgICAgCi9eKFxEKikoPz1cZCkoPyExMjMpLwogICAgQUJDNDQ1CiAwOiBBQkMKIDE6IEFCQwogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIEFCQzEyMwpObyBtYXRjaAogICAgCi9eW1ctXTQ2XS8KICAgIFc0Nl03ODkgCiAwOiBXNDZdCiAgICAtNDZdNzg5CiAwOiAtNDZdCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgV2FsbApObyBtYXRjaAogICAgWmVicmEKTm8gbWF0Y2gKICAgIDQyCk5vIG1hdGNoCiAgICBbYWJjZF0gCk5vIG1hdGNoCiAgICBdYWJjZFsKTm8gbWF0Y2gKICAgICAgIAovXltXLVxdNDZdLwogICAgVzQ2XTc4OSAKIDA6IFcKICAgIFdhbGwKIDA6IFcKICAgIFplYnJhCiAwOiBaCiAgICBYeWxvcGhvbmUgIAogMDogWAogICAgNDIKIDA6IDQKICAgIFthYmNkXSAKIDA6IFsKICAgIF1hYmNkWwogMDogXQogICAgXFxiYWNrc2xhc2ggCiAwOiBcCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgLTQ2XTc4OQpObyBtYXRjaAogICAgd2VsbApObyBtYXRjaAogICAgCi9cZFxkXC9cZFxkXC9cZFxkXGRcZC8KICAgIDAxLzAxLzIwMDAKIDA6IDAxLzAxLzIwMDAKCi93b3JkICg/OlthLXpBLVowLTldKyApezAsMTB9b3RoZXJ3b3JkLwogIHdvcmQgY2F0IGRvZyBlbGVwaGFudCBtdXNzZWwgY293IGhvcnNlIGNhbmFyeSBiYWJvb24gc25ha2Ugc2hhcmsgb3RoZXJ3b3JkCiAwOiB3b3JkIGNhdCBkb2cgZWxlcGhhbnQgbXVzc2VsIGNvdyBob3JzZSBjYW5hcnkgYmFib29uIHNuYWtlIHNoYXJrIG90aGVyd29yZAogIHdvcmQgY2F0IGRvZyBlbGVwaGFudCBtdXNzZWwgY293IGhvcnNlIGNhbmFyeSBiYWJvb24gc25ha2Ugc2hhcmsKTm8gbWF0Y2gKCi93b3JkICg/OlthLXpBLVowLTldKyApezAsMzAwfW90aGVyd29yZC8KICB3b3JkIGNhdCBkb2cgZWxlcGhhbnQgbXVzc2VsIGNvdyBob3JzZSBjYW5hcnkgYmFib29uIHNuYWtlIHNoYXJrIHRoZSBxdWljayBicm93biBmb3ggYW5kIHRoZSBsYXp5IGRvZyBhbmQgc2V2ZXJhbCBvdGhlciB3b3JkcyBnZXR0aW5nIGNsb3NlIHRvIHRoaXJ0eSBieSBub3cgSSBob3BlCk5vIG1hdGNoCgovXihhKXswLDB9LwogICAgYmNkCiAwOiAKICAgIGFiYwogMDogCiAgICBhYWIgICAgIAogMDogCgovXihhKXswLDF9LwogICAgYmNkCiAwOiAKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiICAKIDA6IGEKIDE6IGEKCi9eKGEpezAsMn0vCiAgICBiY2QKIDA6IAogICAgYWJjCiAwOiBhCiAxOiBhCiAgICBhYWIgIAogMDogYWEKIDE6IGEKCi9eKGEpezAsM30vCiAgICBiY2QKIDA6IAogICAgYWJjCiAwOiBhCiAxOiBhCiAgICBhYWIKIDA6IGFhCiAxOiBhCiAgICBhYWEgICAKIDA6IGFhYQogMTogYQoKL14oYSl7MCx9LwogICAgYmNkCiAwOiAKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiCiAwOiBhYQogMTogYQogICAgYWFhCiAwOiBhYWEKIDE6IGEKICAgIGFhYWFhYWFhICAgIAogMDogYWFhYWFhYWEKIDE6IGEKCi9eKGEpezEsMX0vCiAgICBiY2QKTm8gbWF0Y2gKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiICAKIDA6IGEKIDE6IGEKCi9eKGEpezEsMn0vCiAgICBiY2QKTm8gbWF0Y2gKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiICAKIDA6IGFhCiAxOiBhCgovXihhKXsxLDN9LwogICAgYmNkCk5vIG1hdGNoCiAgICBhYmMKIDA6IGEKIDE6IGEKICAgIGFhYgogMDogYWEKIDE6IGEKICAgIGFhYSAgIAogMDogYWFhCiAxOiBhCgovXihhKXsxLH0vCiAgICBiY2QKTm8gbWF0Y2gKICAgIGFiYwogMDogYQogMTogYQogICAgYWFiCiAwOiBhYQogMTogYQogICAgYWFhCiAwOiBhYWEKIDE6IGEKICAgIGFhYWFhYWFhICAgIAogMDogYWFhYWFhYWEKIDE6IGEKCi8uKlwuZ2lmLwogICAgYm9yZmxlXG5iaWIuZ2lmXG5ubwogMDogYmliLmdpZgoKLy57MCx9XC5naWYvCiAgICBib3JmbGVcbmJpYi5naWZcbm5vCiAwOiBiaWIuZ2lmCgovLipcLmdpZi9tCiAgICBib3JmbGVcbmJpYi5naWZcbm5vCiAwOiBiaWIuZ2lmCgovLipcLmdpZi9zCiAgICBib3JmbGVcbmJpYi5naWZcbm5vCiAwOiBib3JmbGVceDBhYmliLmdpZgoKLy4qXC5naWYvbXMKICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IGJvcmZsZVx4MGFiaWIuZ2lmCiAgICAKLy4qJC8KICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IG5vCgovLiokL20KICAgIGJvcmZsZVxuYmliLmdpZlxubm8KIDA6IGJvcmZsZQoKLy4qJC9zCiAgICBib3JmbGVcbmJpYi5naWZcbm5vCiAwOiBib3JmbGVceDBhYmliLmdpZlx4MGFubwoKLy4qJC9tcwogICAgYm9yZmxlXG5iaWIuZ2lmXG5ubwogMDogYm9yZmxlXHgwYWJpYi5naWZceDBhbm8KICAgIAovLiokLwogICAgYm9yZmxlXG5iaWIuZ2lmXG5ub1xuCiAwOiBubwoKLy4qJC9tCiAgICBib3JmbGVcbmJpYi5naWZcbm5vXG4KIDA6IGJvcmZsZQoKLy4qJC9zCiAgICBib3JmbGVcbmJpYi5naWZcbm5vXG4KIDA6IGJvcmZsZVx4MGFiaWIuZ2lmXHgwYW5vXHgwYQoKLy4qJC9tcwogICAgYm9yZmxlXG5iaWIuZ2lmXG5ub1xuCiAwOiBib3JmbGVceDBhYmliLmdpZlx4MGFub1x4MGEKICAgIAovKC4qWHxeQikvCiAgICBhYmNkZVxuMTIzNFh5egogMDogMTIzNFgKIDE6IDEyMzRYCiAgICBCYXJGb28gCiAwOiBCCiAxOiBCCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWJjZGVcbkJhciAgCk5vIG1hdGNoCgovKC4qWHxeQikvbQogICAgYWJjZGVcbjEyMzRYeXoKIDA6IDEyMzRYCiAxOiAxMjM0WAogICAgQmFyRm9vIAogMDogQgogMTogQgogICAgYWJjZGVcbkJhciAgCiAwOiBCCiAxOiBCCgovKC4qWHxeQikvcwogICAgYWJjZGVcbjEyMzRYeXoKIDA6IGFiY2RlXHgwYTEyMzRYCiAxOiBhYmNkZVx4MGExMjM0WAogICAgQmFyRm9vIAogMDogQgogMTogQgogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFiY2RlXG5CYXIgIApObyBtYXRjaAoKLyguKlh8XkIpL21zCiAgICBhYmNkZVxuMTIzNFh5egogMDogYWJjZGVceDBhMTIzNFgKIDE6IGFiY2RlXHgwYTEyMzRYCiAgICBCYXJGb28gCiAwOiBCCiAxOiBCCiAgICBhYmNkZVxuQmFyICAKIDA6IEIKIDE6IEIKCi8oP3MpKC4qWHxeQikvCiAgICBhYmNkZVxuMTIzNFh5egogMDogYWJjZGVceDBhMTIzNFgKIDE6IGFiY2RlXHgwYTEyMzRYCiAgICBCYXJGb28gCiAwOiBCCiAxOiBCCiAgICAqKiogRmFpbGVycyAKTm8gbWF0Y2gKICAgIGFiY2RlXG5CYXIgIApObyBtYXRjaAoKLyg/czouKlh8XkIpLwogICAgYWJjZGVcbjEyMzRYeXoKIDA6IGFiY2RlXHgwYTEyMzRYCiAgICBCYXJGb28gCiAwOiBCCiAgICAqKiogRmFpbGVycyAKTm8gbWF0Y2gKICAgIGFiY2RlXG5CYXIgIApObyBtYXRjaAoKL14uKkIvCiAgICAqKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFiY1xuQgpObyBtYXRjaAogICAgIAovKD9zKV4uKkIvCiAgICBhYmNcbkIKIDA6IGFiY1x4MGFCCgovKD9tKV4uKkIvCiAgICBhYmNcbkIKIDA6IEIKICAgICAKLyg/bXMpXi4qQi8KICAgIGFiY1xuQgogMDogYWJjXHgwYUIKCi8oP21zKV5CLwogICAgYWJjXG5CCiAwOiBCCgovKD9zKUIkLwogICAgQlxuCiAwOiBCCgovXlswLTldWzAtOV1bMC05XVswLTldWzAtOV1bMC05XVswLTldWzAtOV1bMC05XVswLTldWzAtOV1bMC05XS8KICAgIDEyMzQ1NjY1NDMyMQogMDogMTIzNDU2NjU0MzIxCiAgCi9eXGRcZFxkXGRcZFxkXGRcZFxkXGRcZFxkLwogICAgMTIzNDU2NjU0MzIxIAogMDogMTIzNDU2NjU0MzIxCgovXltcZF1bXGRdW1xkXVtcZF1bXGRdW1xkXVtcZF1bXGRdW1xkXVtcZF1bXGRdW1xkXS8KICAgIDEyMzQ1NjY1NDMyMQogMDogMTIzNDU2NjU0MzIxCiAgCi9eW2FiY117MTJ9LwogICAgYWJjYWJjYWJjYWJjCiAwOiBhYmNhYmNhYmNhYmMKICAgIAovXlthLWNdezEyfS8KICAgIGFiY2FiY2FiY2FiYwogMDogYWJjYWJjYWJjYWJjCiAgICAKL14oYXxifGMpezEyfS8KICAgIGFiY2FiY2FiY2FiYyAKIDA6IGFiY2FiY2FiY2FiYwogMTogYwoKL15bYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eTAxMjM0NTY3ODldLwogICAgbgogMDogbgogICAgKioqIEZhaWxlcnMgCk5vIG1hdGNoCiAgICB6IApObyBtYXRjaAoKL2FiY2RlezAsMH0vCiAgICBhYmNkCiAwOiBhYmNkCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWJjZSAgCk5vIG1hdGNoCgovYWJbY2RdezAsMH1lLwogICAgYWJlCiAwOiBhYmUKICAgICoqKiBGYWlsZXJzCk5vIG1hdGNoCiAgICBhYmNkZSAKTm8gbWF0Y2gKICAgIAovYWIoYyl7MCwwfWQvCiAgICBhYmQKIDA6IGFiZAogICAgKioqIEZhaWxlcnMKTm8gbWF0Y2gKICAgIGFiY2QgICAKTm8gbWF0Y2gKCi9hKGIqKS8KICAgIGEKIDA6IGEKIDE6IAogICAgYWIKIDA6IGFiCiAxOiBiCiAgICBhYmJiYgogMDogYWJiYmIKIDE6IGJiYmIKICAgICoqKiBGYWlsZXJzCiAwOiBhCiAxOiAKICAgIGJiYmJiICAgIApObyBtYXRjaAogICAgCi9hYlxkezB9ZS8KICAgIGFiZQogMDogYWJlCiAgICAqKiogRmFpbGVycwpObyBtYXRjaAogICAgYWIxZSAgIApObyBtYXRjaAogICAgCi8iKFteXFwiXSt8XFwuKSoiLwogICAgdGhlIFwicXVpY2tcIiBicm93biBmb3gKIDA6ICJxdWljayIKIDE6IHF1aWNrCiAgICBcInRoZSBcXFwicXVpY2tcXFwiIGJyb3duIGZveFwiIAogMDogInRoZSBcInF1aWNrXCIgYnJvd24gZm94IgogMTogIGJyb3duIGZveAoKLy4qPy9nKwogICAgYWJjCiAwOiAKIDArIGFiYwogMDogYQogMCsgYmMKIDA6IAogMCsgYmMKIDA6IGIKIDArIGMKIDA6IAogMCsgYwogMDogYwogMCsgCiAwOiAKIDArIAogIAovXGIvZysKICAgIGFiYyAKIDA6IAogMCsgYWJjCiAwOiAKIDArIAoKL1xiLytnCiAgICBhYmMgCiAwOiAKIDArIGFiYwogMDogCiAwKyAKCi8vZwogICAgYWJjCiAwOiAKIDA6IAogMDogCiAwOiAKCi88dHIoW1x3XFdcc1xkXVtePD5dezAsfSk+PFREKFtcd1xXXHNcZF1bXjw+XXswLH0pPihbXGRdezAsfVwuKSguKikoKDxCUj4oW1x3XFdcc1xkXVtePD5dezAsfSl8W1xzXXswLH0pKTxcL2E+PFwvVEQ+PFREKFtcd1xXXHNcZF1bXjw+XXswLH0pPihbXHdcV1xzXGRdW148Pl17MCx9KTxcL1REPjxURChbXHdcV1xzXGRdW148Pl17MCx9KT4oW1x3XFdcc1xkXVtePD5dezAsfSk8XC9URD48XC9UUj4vaXMKICA8VFIgQkdDT0xPUj0nI0RCRTlFOSc+PFREIGFsaWduPWxlZnQgdmFsaWduPXRvcD40My48YSBocmVmPSdqb2JsaXN0LmNmbT9Kb2JJRD05NCA2NzM1JktleXdvcmQ9Jz5Xb3JkIFByb2Nlc3NvcjxCUj4oTi0xMjg2KTwvYT48L1REPjxURCBhbGlnbj1sZWZ0IHZhbGlnbj10b3A+TGVnYSBsc3RhZmYuY29tPC9URD48VEQgYWxpZ249bGVmdCB2YWxpZ249dG9wPkNBIC0gU3RhdGV3aWRlPC9URD48L1RSPgogMDogPFRSIEJHQ09MT1I9JyNEQkU5RTknPjxURCBhbGlnbj1sZWZ0IHZhbGlnbj10b3A+NDMuPGEgaHJlZj0nam9ibGlzdC5jZm0/Sm9iSUQ9OTQgNjczNSZLZXl3b3JkPSc+V29yZCBQcm9jZXNzb3I8QlI+KE4tMTI4Nik8L2E+PC9URD48VEQgYWxpZ249bGVmdCB2YWxpZ249dG9wPkxlZ2EgbHN0YWZmLmNvbTwvVEQ+PFREIGFsaWduPWxlZnQgdmFsaWduPXRvcD5DQSAtIFN0YXRld2lkZTwvVEQ+PC9UUj4KIDE6ICBCR0NPTE9SPScjREJFOUU5JwogMjogIGFsaWduPWxlZnQgdmFsaWduPXRvcAogMzogNDMuCiA0OiA8YSBocmVmPSdqb2JsaXN0LmNmbT9Kb2JJRD05NCA2NzM1JktleXdvcmQ9Jz5Xb3JkIFByb2Nlc3NvcjxCUj4oTi0xMjg2KQogNTogCiA2OiAKIDc6IDx1bnNldD4KIDg6ICBhbGlnbj1sZWZ0IHZhbGlnbj10b3AKIDk6IExlZ2EgbHN0YWZmLmNvbQoxMDogIGFsaWduPWxlZnQgdmFsaWduPXRvcAoxMTogQ0EgLSBTdGF0ZXdpZGUKCi9hW15hXWIvCiAgICBhY2IKIDA6IGFjYgogICAgYVxuYgogMDogYVx4MGFiCiAgICAKL2EuYi8KICAgIGFjYgogMDogYWNiCiAgICAqKiogRmFpbGVycyAKTm8gbWF0Y2gKICAgIGFcbmIgICAKTm8gbWF0Y2gKICAgIAovYVteYV1iL3MKICAgIGFjYgogMDogYWNiCiAgICBhXG5iICAKIDA6IGFceDBhYgogICAgCi9hLmIvcwogICAgYWNiCiAwOiBhY2IKICAgIGFcbmIgIAogMDogYVx4MGFiCgovXihiKz98YSl7MSwyfT9jLwogICAgYmFjCiAwOiBiYWMKIDE6IGEKICAgIGJiYWMKIDA6IGJiYWMKIDE6IGEKICAgIGJiYmFjCiAwOiBiYmJhYwogMTogYQogICAgYmJiYmFjCiAwOiBiYmJiYWMKIDE6IGEKICAgIGJiYmJiYWMgCiAwOiBiYmJiYmFjCiAxOiBhCgovXihiK3xhKXsxLDJ9P2MvCiAgICBiYWMKIDA6IGJhYwogMTogYQogICAgYmJhYwogMDogYmJhYwogMTogYQogICAgYmJiYWMKIDA6IGJiYmFjCiAxOiBhCiAgICBiYmJiYWMKIDA6IGJiYmJhYwogMTogYQogICAgYmJiYmJhYyAKIDA6IGJiYmJiYWMKIDE6IGEKICAgIAovKD8hXEEpeC9tCiAgICB4XG5iXG4KTm8gbWF0Y2gKICAgIGFcYnhcbiAgCiAwOiB4CiAgICAKL1x4MHthYn0vCiAgICBcMHthYn0gCiAwOiBceDAwe2FifQoKLyhBfEIpKj9DRC8KICAgIENEIAogMDogQ0QKICAgIAovKEF8QikqQ0QvCiAgICBDRCAKIDA6IENECgovKEFCKSo/XDEvCiAgICBBQkFCQUIKIDA6IEFCQUIKIDE6IEFCCgovKEFCKSpcMS8KICAgIEFCQUJBQgogMDogQUJBQkFCCiAxOiBBQgogICAgCi8gRW5kIG9mIHRlc3RpbnB1dDEgLwoK