ClRlc3QgVmlzdWFsIGJsb2NrIG1vZGUgY29tbWFuZHMKQW5kIHRlc3QgIlUiIGluIFZpc3VhbCBtb2RlLCBhbHNvIG9uIEdlcm1hbiBzaGFycCBTLgoKI2RlZmluZSBCT19BTEwJICAgIDB4MDAwMQojZGVmaW5lIEJPX0JTCSAgICAweDAwMDIKI2RlZmluZSBCT19DUlNSCSAgICAweDAwMDQKClNUQVJUVEVTVAo6c28gc21hbGwudmltCjpzbyBtYnl0ZS52aW0KOiIgVGhpcyBvbmx5IHdvcmtzIHdoZW4gJ2VuY29kaW5nJyBpcyAibGF0aW4xIiwgZG9uJ3QgZGVwZW5kIG9uIHRoZSBlbnZpcm9ubWVudAo6c2V0IGVuYz1sYXRpbjEKL15hYmNkZQo6IiBUZXN0IHNoaWZ0LXJpZ2h0IG9mIGEgYmxvY2sKamxsbGwWamo+d2xsFmpsbGw+CjoiIFRlc3Qgc2hpZnQtbGVmdCBvZiBhIGJsb2NrCkckaGhoaBZrazwKOiIgVGVzdCBibG9jay1pbnNlcnQKR2tsFmtra0l4eXobCjoiIFRlc3QgYmxvY2stcmVwbGFjZQpHbGxsbBZra2tsbGxycQo6IiBUZXN0IGJsb2NrLWNoYW5nZQpHJGtoaGgWaGhra2Ntbm8bCjokLTQsJHchIHRlc3Qub3V0CjoiIFRlc3QgYmxvY2staW5zZXJ0IHVzaW5nIGN1cnNvciBrZXlzIGZvciBtb3ZlbWVudAovXmFhYWEvCjpleGUgIjpub3JtISBsXDxDLVY+ampqbGxsSVw8UmlnaHQ+XDxSaWdodD4gIFw8RXNjPiIKOi9eYWEvLC9eJC93ID4+IHRlc3Qub3V0Ci94YWFhJC8KOmV4ZSAiOm5vcm0hIFw8Qy1WPmpqakk8Plw8TGVmdD5wXDxFc2M+Igo6L3hhYWEkLywvXiQvdyA+PiB0ZXN0Lm91dAo6IiBUZXN0IGZvciBWaXN1YWwgYmxvY2sgd2FzIGNyZWF0ZWQgd2l0aCB0aGUgbGFzdCA8Qy12PiQKL15BMjMkLwo6ZXhlICI6bm9ybSEgbFw8Qy1WPmokQWFiXDxFc2M+Igo6LiwvXiQvdyA+PiB0ZXN0Lm91dAo6IiBUZXN0IGZvciBWaXN1YWwgYmxvY2sgd2FzIGNyZWF0ZWQgd2l0aCB0aGUgbWlkZGxlIDxDLXY+JCAoMSkKL15CMjMkLwo6ZXhlICI6bm9ybSEgbFw8Qy1WPmokaEFhYlw8RXNjPiIKOi4sL14kL3cgPj4gdGVzdC5vdXQKOiIgVGVzdCBmb3IgVmlzdWFsIGJsb2NrIHdhcyBjcmVhdGVkIHdpdGggdGhlIG1pZGRsZSA8Qy12PiQgKDIpCi9eQzIzJC8KOmV4ZSAiOm5vcm0hIGxcPEMtVj5qJGhoQWFiXDxFc2M+Igo6LiwvXiQvdyA+PiB0ZXN0Lm91dAo6IiBUZXN0IGZvciBWaXN1YWwgYmxvY2sgaW5zZXJ0IHdoZW4gdmlydHVhbGVkaXQ9YWxsIGFuZCB1dGYtOCBlbmNvZGluZwo6c2V0IHZlPWFsbCBlbmM9dXRmLTgKOi9cdFx0bGluZQo6ZXhlICI6bm9ybSEgMDdsXDxDLVY+ampJeFw8RXNjPiIKOi4sL14kL3cgPj4gdGVzdC5vdXQKOiIgVGVzdCBmb3IgVmlzdWFsIGJsb2NrIGFwcGVuZCB3aGVuIHZpcnR1YWxlZGl0PWFsbAo6ZXhlICI6bm9ybSEgMDEybFw8Qy12PmpqQXhcPEVzYz4iCjpzZXQgdmU9IGVuYz1sYXRpbjEKOi4sL14kL3cgPj4gdGVzdC5vdXQKOiIgZ1VlIG11c3QgdXBwZXJjYXNlIGEgd2hvbGUgd29yZCwgYWxzbyB3aGVuIN8gY2hhbmdlcyB0byBTUwpHb3RoZSB5b3V0dd9ldXUgZW5kG1lwazB3Z1VlCjoiIGdVZnggbXVzdCB1cHBlcmNhc2UgdW50aWwgeCwgaW5jbHVzaXZlLgpPLSB5b3XfdHXfZXh1IC0bMGZvZ1VmeAo6IiBWVSBtdXN0IHVwcGVyY2FzZSBhIHdob2xlIGxpbmUKWXBrVlUKOiIgc2FtZSwgd2hlbiBpdCdzIHRoZSBsYXN0IGxpbmUgaW4gdGhlIGJ1ZmZlcgpZUEdpMTExG1ZVZGRQCjoiIFVwcGVyY2FzZSB0d28gbGluZXMKT2JsYWggZGkKZG9oIGR1dBtWa1VqCjoiIFVwcGVyY2FzZSBwYXJ0IG9mIHR3byBsaW5lcwpkZHBwaTMzMxtrMGkyMjIbZnlsbHZqZnVVawo6IiB2aXN1YWwgcmVwbGFjZSB1c2luZyBFbnRlciBvciBOTApHM28xMjM0NTY3ODkbMmswNWwWMmpyDUczbzk4NzY1GzJrMDJsFjJqchYNCkczbzEyMzQ1Njc4ORsyazA1bBYyanIKRzNvOTg3NjUbMmswMmwWMmpyFgo6Igo6IiBUZXN0IGN1cnNvciBwb3NpdGlvbi4gV2hlbiB2ZT1ibG9jayBhbmQgVmlzdWFsIGJsb2NrIG1vZGUgYW5kICRnago6c2V0IHZlPWJsb2NrCjpleGUgIjpub3JtISAya1w8Qy1WPiRnalw8RXNjPiIKOmxldCBjcG9zPWdldHBvcygiJz4iKQo6JHB1dCA9J2NvbDonLmNwb3NbMl0uJyBvZmY6Jy5jcG9zWzNdCjoiCjoiIGJsb2NrX2luc2VydCB3aGVuIHJlcGxhY2luZyBzcGFjZXMgaW4gZnJvbnQgb2YgdGhlIGJsb2NrIHdpdGggdGFicwo6c2V0IHRzPTggc3RzPTQgc3c9NAo6NCw3eQpHcAo6ZXhlICI6bm9ybSEgZjBcPEMtVj4yaklcPHRhYj5cPGVzYz4iCjovXnRoZS8sJHcgPj4gdGVzdC5vdXQKOnFhIQpFTkRURVNUCgoJCWxpbmUxCgkJbGluZTIKCQlsaW5lMwoKYWFhYWFhCmJiYmJiYgpjY2NjY2MKZGRkZGRkCgp4YWFhCmJiYmIKY2NjYwpkZGRkCgp5YWFhCr+/vwpiYmIKCkEyMwo0NTY3CgpCMjMKNDU2NwoKQzIzCjQ1NjcKCmFiY2RlZmdoaWprbG0KYWJjZGVmZ2hpamtsbQphYmNkZWZnaGlqa2xtCmFiY2RlZmdoaWprbG0KYWJjZGVmZ2hpamtsbQo=