ATTENTION: ENCRYPTION APPLIED TmFtZToKU3BpcmVzIGFuZCBTcGlyZW1pbmRyeQoKRGVzY3JpcHRpb246ClN0cnVjdHVyZXMgb2YgdmFyeWluZyBzaXplcywgZnJvbSB0aGUgc2NhbGUgb2YgaHV0cyB0byBza3lzY3JhcGVycywgbWFkZSB1cCBvZiBvcGFxdWUgYW5kIHBpdGNoIGJsYWNrIG1hdGVyaWFsIHdpdGggbGl0dGxlIGx1c3Rlci4gVGhlIGludGVyaW9yIHdhbGxzIG9mIHRoZXNlIHN0cnVjdHVyZXMsIGRlc3BpdGUgYXBwZWFyaW5nIGxpa2UgdGhpY2sgZ2xhc3MsIGFyZSB0aGUgc2FtZSBtYXRlcmlhbC0tIHRoZXkganVzdCB0ZW5kIHRvIGdpdmUgYSBkaW0gcHJvamVjdGVkIHZpZXcgb2YgdGhlIGV4dGVyaW9yLiBUeXBpY2FsbHkgYXBwZWFyIGluIHRoZSBmb3JtIG9mIGdlb21ldHJpYyBzaGFwZXMsIHdpdGggdGhlIG1vc3QgY29tbW9uIGJlaW5nIGVub3Jtb3VzIHJlY3RhbmdsZXMuCgpBYmlsaXRpZXM6CgogICAgQ2FwYWJsZSBvZiBhdXRvbm9tb3VzIGludGVyaW9yIHJlYXJyYW5nZW1lbnQuIFRoZSBsYXJnZXIgYW5kIGRlbnNlciBhIHN0cnVjdHVyZSBpcywgdGhlIHNsb3dlciBhbmQgbW9yZSBsaW1pdGVkIGl0IGlzIGluIGl0cyBhYmlsaXR5IHRvIHJlc3RydWN0dXJlIGl0cyBpbnRlcmlvci4gVGhlIGV4dGVudCBvZiByZWFycmFuZ2VtZW50IGNhbiBiZSBhbnl3aGVyZSBmcm9tIHRoZSB3YWxscyBleHRlbmRpbmcgc2xvdyB0ZW5kcmlscyB0byBwdXNoIGZ1cm5pdHVyZSBhcm91bmQsIHRvIHRoZSBkaW1lbnNpb25zIG9mIGEgcm9vbSBiZWluZyBhbHRlcmVkLCBvciBjaGFuZ2luZyB0aGUgZGVzdGluYXRpb25zIG9mIGhhbGx3YXlzLgogICAgUG9zc2VzcyBjb3JydXNwaGVyaWMgcGlsb3QgY2hhbWJlcnMuIEJ5IGVudGVyaW5nIHRoZXNlLCBhbiBvYnNlY3JpYW4gbWF5IGluc2VydCB0aGVpciBtaW5kIGludG8gdGhlIGxpdmluZyBzdHJ1Y3R1cmUgaXRzZWxmLiBUaGV5IGJlY29tZSBvbW5pcHJlc2VudCB3aXRoaW4gdGhlIGZhY2lsaXR5LS0gdGhlIGRyb25lcyBiZWNvbWUgdGhlaXIgZXllcyBhbmQgZWFycywgdGhlIGFwcGFyYXR1cyBvZiB0aGUgZmFjaWxpdHkgYmVjb21pbmcgdGhlaXIgYXBwZW5kYWdlcy4gT2JzZWNyaWFucyB3aG8gdGFrZSBvbiB0aGlzIHJvbGUgYXJlIHJlZmVycmVkIHRvIGFzIHNwaXJlbWluZHMsIHRoZSBwcmFjdGljZSByZWZlcnJlZCB0byBhcyBzcGlyZW1pbmRyeS4gVGhlcmUgaXMgYSBiYXNpYyBvd25lcnNoaXAgcHJvdG9jb2wgaW4gcGxhY2UgdG8gcHJldmVudCB1bmF1dGhvcml6ZWQgc3BpcmVtaW5kcnkuCiAgICBTdHJ1Y3R1cmFsIGNvcnJ1IGV4aXN0cyBpbiBzZWdtZW50cyBhbmQgaXMgbW9yZSByZXNpc3RhbnQgdG8gaW5mZWN0aW91cyBhZ2VudHMuIElmIGEgcGFydCBvZiB0aGUgc3BpcmUgaXMgY29tcHJvbWlzZWQsIGl0IHdpbGwgbm90IHNwcmVhZCB0byB0aGUgcmVzdCBhcyBlYXNpbHkgYXMgaXQgd291bGQgd2l0aGluIG1vc3QgY29ycnVzcGhlcmljIHRlY2hub2xvZ3kuIEEgY29tcGV0ZW50IHNwaXJlbWluZCBjYW4gZWFzaWx5IHN0ZW0gYW4gaW5mZWN0aW9uIGJlZm9yZSBpdCBiZWNvbWVzIGEgcHJvYmxlbSwgZXZlbiBpZiB0aGUgaW5pdGlhbGx5IGluZmVjdGVkIHNlZ21lbnQgaXMgbG9zdC4KICAgICAgCgpDb25kaXRpb25hbCBBYmlsaXRpZXM6CgogICAgV2l0aGluIHRoZSBjb250ZXh0IG9mIG9ic2VjcmlhbiBtaW5pbmcgb3BlcmF0aW9ucywgdGhlc2UgYWN0IGFzIHNwaXJlbWluZCBicm9hZGNhc3RpbmcgdG93ZXJzLCBhbGxvd2luZyBleHRlbmRlZCBjb250cm9sIG9mIGFwcGFyYXR1cyBvdXRzaWRlIG9mIHRoZSBmYWNpbGl0eS4gVGhpcyBmdW5jdGlvbiBpcyBub3QgYXZhaWxhYmxlIGluIHN0cnVjdHVyZXMgdW5sZXNzIHRoZXkgd2VyZSBidWlsdCBmb3IgdGhlIGV4cHJlc3MgcHVycG9zZSBvZiBtYW5hZ2luZyBlcXVpcG1lbnQgaW4gdGhlIGdyZWF0ZXIgYXJlYS4KICAgICAgCgpMaW1pdGF0aW9uczoKCiAgICBTdHJ1Y3R1cmFsIHNlZ21lbnRzLCB3aGVuIGNvbXByb21pc2VkLCB0dXJuIHRvIGhlYXZ5IG1ldGFsbGljIHNsdWRnZS4gRm9yIGV4YW1wbGUsIGlmIHRoZSB3YWxscywgY2VpbGluZywgb3IgdGhlIGZsb29yIG9mIGEgcm9vbSB0YWtlIGVub3VnaCBzdHJlc3Mgb3IgYXJlIHN1YmplY3QgdG8gYW4gaW5mZWN0aW91cyBhZ2VudCwgdGhleSB3aWxsIHR1cm4gaW50byBhIHBpdGNoIHRhci1saWtlIHN1YnN0YW5jZS4gVGhpcyBpcyBkaWZmaWN1bHQgdG8gcmVtb3ZlIGFuZCBkYW5nZXJvdXMgaWYgb25lIGlzIHRyYXBwZWQgaW4gaXRzIGZsb3cuCiAgICBTcGlyZW1pbmRyeSBsZWF2ZXMgdGhlIG9wZXJhdG9yIGV4aGF1c3RlZCBhZnRlciBsZWF2aW5nIHRoZSBwaWxvdHNwaGVyZS4gIFRoZSBhbW91bnQgb2YgdGltZSB0aGV5IGZlZWwgdGhpcyB3YXkgaXMgZGVwZW5kZW50IG9uIGhvdyBsb25nIHRoZXkgd2VyZSBhY3RpbmcgYXMgdGhlIHNwaXJlbWluZCwgYnV0IGlzIG5lZ2F0ZWQgYnkgdGhlbSBnb2luZyB0byBzbGVlcCBmb3IgYXQgbGVhc3QgZWlnaHQgaG91cnMuIElmIHRoZXkgYXR0ZW1wdCB0byByZS1lbnRlciB0aGUgcGlsb3RzcGhlcmUgYmVmb3JlIHRoZXkgYXJlIGZ1bGx5IHJlc3RlZCwgdGhleSdsbCBqdXN0IGZhbGwgYXNsZWVwIGluIHRoZXJlIGZvciBhIHdoaWxlLgogICAgVGhlIGhhcmRlbmVkIHNraW4gb2YgdGhlIHN0cnVjdHVyYWwgY29ycnUgc29mdGVucyB3aGVuIG1vdmluZywgbWFraW5nIGl0IG11Y2ggbW9yZSBzdXNjZXB0aWJsZSB0byBibHVudCBhbmQgaW5mZWN0aW91cyBhdHRhY2tzLgogICAgICAKCkNvbmRpdGlvbmFsIExpbWl0YXRpb25zOgoKICAgIFRoZSBzaXplIG9mIHRoZSBzdHJ1Y3R1cmUgYWN0cyBhcyBhIGxpbWl0IHRvIHdoYXQga2luZCBvZiBvYnNlY3JpYW4gY2FuIG9wZXJhdGUgaXQuIEdlbmVyYWxseSwgbm9uLUp1ZCBjYW4gb25seSBvcGVyYXRlIHNtYWxsIHN0cnVjdHVyZXMgZm9yIGxvbmcgcGVyaW9kcyBvZiB0aW1lLCBqdXN0IGVub3VnaCB0byB1c2UgdGhlIGJyb2FkY2FzdGluZyBhYmlsaXRpZXMgb2YgYSBtaW5pbmcgc3BpcmUuIFNwZWN0cmVzIGFuZCBKdWQgYXJlIGNhcGFibGUgb2Ygb3BlcmF0aW5nIGxhcmdlciBmYWNpbGl0aWVzLCBhbmQgY2FuIGNvbWZvcnRhYmx5IHVzZSBzbWFsbGVyIGZhY2lsaXRpZXMgZm9yIG11Y2ggbG9uZ2VyIHBlcmlvZHMgb2YgdGltZS4KICAgICAgCgpIb3cgZG9lcyBpdCB3b3JrOgpDb3JydXNwaGVyaWMgbWF0ZXJpYWxzIGFyZSB0aGUgY3J1eCBvZiBhbGwgb2JzZWNyaWFuIHRlY2hub2xvZ3ksIGFuZCB0aGF0IGluY2x1ZGVzIHRoZWlyIHN0cnVjdHVyZXMuIFdoaWxlIHRoZXkgcHJlZmVyIHRvIGNhcnZlIG91dCBjYXZlcyBmb3IgY2l2aWxpYW4gcHVycG9zZXMsIGluZHVzdHJpYWwgYW5kIG1pbGl0YXJ5IGZhY2lsaXRpZXMgYXJlIHVzdWFsbHkgc3BpcmVzLiBTcGlyZXMgdXRpbGl6ZSBhIHN0cmFpbiBvZiBzdHJ1Y3R1cmFsbHkgb3JpZW50ZWQgY29ycnUsIG9mdGVuIHJlZmVycmVkIHRvIGFzIGJsYWNrIGNvcnJ1LCBjcmVhdGVkIGJ5IGJvdGggZmVlZGluZyBpdCBjb3JydXNwaGVyIG9mIGEgbG93ZXIgcXVhbGl0eSBhbmQgaW5zdHJ1Y3RpbmcgdGhlIHN1YnN0cnVjdHVyZSBvZiB0aGUgc3VwZXJvcmdhbmlzbSB0byBiZSBtb3JlIGRlbnNlbHkgcGFja2VkLiBUaGUgcmVzdWx0aW5nIGNvcnJ1IGlzIGhlYXZpZXIgYW5kIGxlc3MgYWJsZSB0byBzaGlmdCBpdHNlbGYgZnJlZWx5LCBidXQgZnVuY3Rpb25zIGFzIGEgY29tcHJlaGVuc2l2ZSBidWlsZGluZyBtYXRlcmlhbCBpbiBib3RoIGluc3VsYXRpb24gYW5kIGludGVncml0eS4KClJlZmVyZW5jZWQgVGVjaG5vbG9naWVzOgpDb3JydXNwaGVyaWMgVGVjaG5vbG9neQoKQXR0YWluYWJpbGl0eToKU2VtaS1jbG9zZWQuIEl0J3MgYSByYWNpYWwgdGVjaG5vbG9neSB0aGF0IHByb2JhYmx5IGlzbid0IHZlcnkgaGFyZCBmb3Igbm9uLW9ic2VjcmlhbnMgdG8gY29tZSBhY3Jvc3MsIGJ1dCB0aGV5J2QgYmUgaGFyZC1wcmVzc2VkIHRvIHVzZSBpdC4KClRhZ3M6IFtJbmR1c3RyaWFsXSBbUmFjaWFsXQoKQ2F0ZWdvcnk6IE90aGVyL0NvbXBvbmVudHMK