QmVnaW5uaW5nczogIFRoZSBjb2RlIGRlYnQgd2FzIHNvIGhpZ2ggdGhhdCB3ZSBkZWNsYXJlZCBiYW5rcnVwdGN5LgoKPHVsPjxoND5QYXkgYXR0ZW50aW9uIHRvPC9oND4KPGxpPkVtZXJnZW50IERlc2lnbjwvbGk+CjxsaT5yZWZhY3RvcmluZzwvbGk+CjxsaT50ZXN0YWJpbGl0eTwvbGk+CjxsaT50aGVzaXMsIGFudGl0aGVzaXMsIHN5bnRoZXNpczwvbGk+CjxsaT5jb250YWluZWQgcG9seW1vcnBoaXNtIChHYW5nIG9mIEZvdXIpPC9saT4KPGxpPjwvbGk+CjwvdWw+Cgo8dWw+PGg0PlByb2Nlc3MgSW5wdXRzPC9oND4KPGxpPmJyaWdodCwgaGlnaGx5IG1vdGl2YXRlZCBlbmdpbmVlcnM8L2xpPgo8L3VsPgoKCgo8dWw+PGg0PlByb2Nlc3MgU3RlcHM8L2g0Pgo8bGk+cmUtcGxhbiB3ZWVrbHk8L2xpPgo8bGk+cmV2aWV3IGFsbCBkZXNpZ248L2xpPgo8bGk+ZGV2ZWxvcCB1c2VyIHN0b3JpZXMgKyBwbHVzIHdoYXQgY291bGQgZ28gd3Jvbmc8L2xpPgo8bGk+cHJvdG90eXBlIGhpZ2ggcmlzayBzdG9yZWlzPC9saT4KPGxpPnBhaXItd2lzZSBkZXZlbG9wZW1lbnQ8L2xpPgo8bGk+bWV0cmljcyB0byBtYW5hZ2UgYSBwcm9qZWN0OiBwb3NpdGlvbiBhbmQgdmVsb2NpdHk8L2xpPgo8L3VsPgoKCgo8dWw+PGg0PlBoaWxvc29waHk8L2g0Pgo8bGk+ZW1icmFjZSBjaGFuZ2U8L2xpPgo8bGk+b24gdGVhY2hpbmc6IG15IGdvYWwgaXMgbm90IHRvIHRlbGwgeW91IHNvbWV0aGluZyB0cnVlbHkgbmV3LCByYXRoZXIgdG8gc3VnZ2VzdCB3aGF0IHRvIHBheSBhdHRlbnRpb24gdG8gYW5kIHdoYXQgeW91IGNhbiBpZ25vcmU8L2xpPgo8bGk+VGhlIGFwcGFyZW50IGluY3JlYXNlIGluIHVuY2VydGFpbnR5IHByb3ZpZGVkIGJ5IHRoZSBhZ2lsZSBhcHByb2FjaCBpcyBhY3R1YWxseSBncmVhdGVyIHJlYWxpdHkgbm90IGdyZWF0ZXIgcmlzay48L2xpPgo8bGk+WW91IGNhbiBvbmx5IHRlYWNoIHNvbWVvbmUgc29tZXRoaW5nIHRoYXQgaGUgYWxtb3N0IGFscmVhZHkga25vd3MuPC9saT4KPGxpPkhvcGUgaXMgbm90IGEgcGxhbiwgYnV0IGl0IGlzIGVzc2VudGlhbCB0byBzdWNjZXNzLjwvbGk+CjxsaT5Eb24ndCBnaXZlIHVwIHF1aWNrbHkuICBZb3UgYXJlIHNtYXJ0IGVub3VnaC48L2xpPgo8bGk+T25seSBkZWdyYWRlIHlvdXIgY29kZSBjb25zY2lvdXNseS48L2xpPgo8bGk+VW5xdWVzdGlvbmVkIGFzc3VtcHRpb25zIGFyZSB0cmVhdGVkIGFzIGZhY3RzIHVudGlsIHlvdSBhcmUgc21hY2tlZCBpbiB0aGUgZmFjZSBieSByZWFsaXR5PC9saT4KPGxpPlRoZSBtYWluIGJlbmVmaXQgb2YgT08gaXMgbm90IHJldXNlLCByYXRoZXIgaXQgZmFjaWxpdGF0ZXMgY2xlYW5seSBzZXBhcmF0aW5nIHVzYWdlIGZyb20gY29uc3RydWN0aW9uIGZyb20gZGVmaW5pdGlvbi48L2xpPgo8bGk+SWRlbnRpZnkgZGlmZmVyZW5jZXMgYW5kIGludmVudCBhIGNvbmNlcHQgdGhhdCBhbGxvd3MgeW91IHRvIGlnbm9yZSB0aGVtLjwvbGk+CjxsaT5Vc2UgaW50ZW5zaW9uLXJldmVhbGluZyBuYW1lczwvbGk+CjxsaT5Eb24ndCB0aGluayBvZiBvYmplY3RzIGFzIGRhdGEgd2l0aCBtZXRob2RzLCByYXRoZXIgYXMgZW50aXRpZXMgd2l0aCB3ZWxsIGRlZmluZWQgcmVzcG9uc2liaWxpdGllcy48L2xpPgo8bGk+VXNlIHByaXZhdGUgYWNjZXNzIGJ5IHBvbGljeSBhbmQgcmV2ZWFsIHJlbHVjdGFudGx5PC9saT4KPGxpPlR5cGluZyBpcyBub3QgdGhlIGJvdHRsZS1uZWNrPC9saT4KPGxpPkFic3RyYWN0aW9uIGlzIG1vcmUgdGhhbiBqdXN0IGRhdGEgYWJzdHJhY3Rpb24gLSBpdCBpbmNsdWRlcyBiZWhhdmlvciBhYnN0cmFjdGlvbjwvbGk+CjxsaT5QYXR0ZXJucyBhcyByZWNpcGVzIGFyZSBsaW1pdGVkIGJ1dCBwYXR0ZXJucyBhcyBpZGVhcyBhcmUgdmVyeSBwb3dlcmZ1bC48L2xpPgo8bGk+VGhlIHRyYXA6IGNoYW5nZSBpcyBwYWluZnVsLCB0aHVzIG15IG1pc3Npb24gaW4gbGlmZSBpcyB0byBwcmV2ZW50IGNoYW5nZS4gIFRoZSBhbHRlcm5hdGl2ZTogZGV2ZWxvcCBoaWdoIHF1YWxpdHkgY29kZSBhbmQgbG9jYWxpemUgY2hhbmdlIHNvIHlvdSBhcmUgZW1wb3dlcmVkIHRvIGVtYnJhY2UgY2hhbmdlLjwvbGk+CjxsaT5EbyBub3QgYmUgcmlzayBhZHZlcnNlLCBpbnN0ZWFkIHNwaWtlIGEgc29sdXRpb248L2xpPgo8bGk+U2hpZnQgeW91ciB0aGlua2luZyBmcm9tIHByb2NlZHVyYWwgdG8gYXNzZXJ0aW5nIHRoYXQgYW4gb2JqZWN0IGZ1bGZpbGwgaXRzIHJlc3BvbnNpYmlsaXRpZXM8L2xpPgo8bGk+RG9uJ3QgaGF2ZSBhbiBpbXBsZW1lbnRhdGlvbiB0aGF0IGluaGVyaXRzIGZyb20gYW5vdGhlciBpbXBsZW1lbnRhdGlvbiAtIG9ubHkgaW5oZXJpdCBmcm9tIGNvbmNlcHRzLjwvbGk+CjxsaT5Ib3cgZG8geW91IGVhdCBhbiBlbGVwaGFudD8gIE9uZSBiaXRlIGF0IGEgdGltZS48L2xpPgo8bGk+SSdsbCBzZWUgaXQgd2hlbiBJIGJlbGlldmUgaXQuPC9saT4KPGxpPlBhdHRlcm5zIGFyZW4ndCBtZXJlbHkgcmVjaXBlcywgYnV0IHBhdHRlcm5zIGFyZSBhYm91dCAiV2hhdCBhcmUgdGhlIGZvcmNlcz8iLCB3aGF0IHNob3VsZCB3ZSBwYXkgYXR0ZW50aW9uIHRvPzwvbGk+PC91bD4KPGxpPmp1c3QgYmVpbmcgYXdhcmUgb2YgYW4gaXNzdWUgaGVscHMgc29sdmUgaXQuIE9mdGVuIHdlIGFyZSBmYXIgbW9yZSBjYXBhYmxlIGJ1dCB3ZSBqdXN0IGZpYWwgdG8gcGF5IGF0dGVudGlvbjwvbGk+Cgo8dWw+PGg0PkNvZGUgUXVhbGl0eTwvaDQ+CjxsaT5zaW1wbGljaXR5PC9saT4KPGxpPnJlYWRhYmlsaXR5PC9saT4KPGxpPmRyaXZlbiBieSB0ZXN0YWJpbGl0eSBvZiBpbnRlcmZhY2VzPC9saT4KPGxpPnN0cm9uZyBjb2hlc2lvbjogb2JqZWN0IGlzIGZvY3VzZWQ8L2xpPgo8bGk+bG9vc2UgY291cGxpbmc6IG9iamVjdHMgYXJlIG5vdCBpbnRlcmRlcGVuZGVudDwvbGk+CjxsaT5taW5pbWl6ZSByZWR1ZGFuY3k8L2xpPgo8bGk+ZW5jYXBzdWxhdGlvbjwvbGk+CjxsaT48L2xpPgo8L3VsPgoKCjx1bD48aDQ+Q29yZSBDb21wZXRlbmNpZXM8L2g0Pgo8bGk+ZWZmZWN0aXZlbHkgYXBwbGllcyBkZXNpZ24gcGF0dGVybnM8L2xpPgo8bGk+dW5kZXJzdGFuZHMgYW5kIHBheXMgYXR0ZW5zaW9uIHRvIGNvZGUgcXVhbGl0eTwvbGk+CjxsaT5mYWNpbGl0aWVzIHRlYW0gY29oZXNpb24gYW5kIGVmZmVjdGlseSB1c2VzIHBhaXItd2lzZSBkZXZlbG9wbWVudDwvbGk+CjxsaT48L2xpPgo8bGk+PC9saT4KPGxpPjwvbGk+CjwvdWw+CgoKCgoKPHVsPjxoND5SZWZlcmVuY2VzPC9oND4KPGxpPkVmZmVjdGl2ZSBKYXZhmSBQcm9ncmFtbWluZyBMYW5ndWFnZSBHdWlkZQpKb3NodWEgQmxvY2gKUHVibGlzaGVyOiBBZGRpc29uIFdlc2xleSBQcm9mZXNzaW9uYWwgCklTQk46IDAtMjAxLTMxMDA1LTg8L2xpPgo8bGk+Q29uY3VycmVudCBQcm9ncmFtbWluZyBpbiBKYXZhmTogRGVzaWduIFByaW5jaXBsZXMgYW5kIFBhdHRlcm4KRG91Z2xhcyBMZWEKUHVibGlzaGVyOiBBZGRpc29uIFdlc2xleSBQcm9mZXNzaW9uYWwgCklTQk46IDAtMjAxLTMxMDA5LTAKPC9saT4KPGxpPkluc2lkZSBKYXZhIDIgUGxhdGZvcm0gU2VjdXJpdHk6IEFyY2hpdGVjdHVyZSwgQVBJIERlc2lnbiwgYW5kIEltcGxlbWVudGF0aW9uICgybmQgRWRpdGlvbikKTGkgR29uZwpJU0JOOiAwMjAxNzg3OTExCjwvbGk+CjxsaT5UaGUgUG9ydGxhbmQgUGF0dGVybiBSZXBvc2l0b3J5IHdhcyB0aGUgZmlyc3Qgd2lraSwgZXN0YWJsaXNoZWQgYnkgV2FyZCBDdW5uaW5naGFtIGluIDE5OTUgWzFdIChodHRwOi8vYzIuY29tL2NnaS93aWtpP1dpa2lIaXN0b3J5KS4gSGUgaW52ZW50ZWQgdGhlIHdpa2kgbmFtZSBhbmQgY29uY2VwdCwgYW5kIGltcGxlbWVudGVkIHRoZSBmaXJzdCB3aWtpIGVuZ2luZS48L2xpPgo8L3VsPg==