LlwiIEF1dGhvcjogT3hhbiB2YW4gTGVldXdlbgouXCIgSW5jbHVkZXMgdGV4dCBmcm9tIHRoZSBkZWItY29udHJvbCBtYW51YWwgcGFnZSBieSBSYXVsIE1pbGxlcgouXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi5cIgouXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgouXCIKLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgouVEggZGViXC1zcmNcLWNvbnRyb2wgNSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iIERlYmlhbgouU0ggTk9NCmRlYlwtc3JjXC1jb250cm9sIFwtIEZvcm1hdCBkdSBmaWNoaWVyIHByaW5jaXBhbCBkZSBjb250cvRsZSBkYW5zIGxlcyBwYXF1ZXRzCkRlYmlhbgouCi5TSCBTWU5PUFNJUwpjb250cvRsZQouCi5TSCBERVNDUklQVElPTgpDaGFxdWUgcGFxdWV0IHNvdXJjZSBEZWJpYW4gY29udGllbnQgdW4gZmljaGllciCrXCBjb250cm9sXCC7IG1h7nRyZSwgcXVpCmNvbnRpZW50IGF1IG1vaW5zIDIgcGFyYWdyYXBoZXMsIHPpcGFy6XMgcGFyIHVuZSBsaWduZSB2aWRlLiBMZSBwcmVtaWVyCnBhcmFncmFwaGUgZG9ubmUgdG91dGVzIGxlcyBpbmZvcm1hdGlvbnMg4CBwcm9wb3MgZHUgcGFxdWV0IHNvdXJjZSBlbgpn6W7pcmFsIGV0IGNoYXF1ZSBwYXJhZ3JhcGhlIHF1aSBzdWl0IGTpY3JpdCBleGFjdGVtZW50IHVuIHBhcXVldApiaW5haXJlLiBDaGFxdWUgcGFyYWdyYXBoZSBjb250aWVudCBhdSBtb2lucyB1biBjaGFtcC4gVW4gY2hhbXAgY29tbWVuY2UgcGFyCmxlIG5vbWR1IGNoYW1wLCBwYXIgZXhlbXBsZSBcZkJQYWNrYWdlXGZQIG91IFxmQlNlY3Rpb25cZlAgKGxhIGNhc3NlIG4nZXN0IHBhcwpzaWduaWZpY2F0aXZlKSwgc3VpdmkgZCd1biBjYXJhY3TocmUgq1wgZGV1eFwtcG9pbnRzXCC7LCBkdSBjb250ZW51IGR1IGNoYW1wIGV0CmQndW4gcmV0b3VyIOAgbGEgbGlnbmUuIExlcyBjaGFtcHMgbXVsdGlcLWxpZ25lcyBzb250IGF1c3NpIHBvc3NpYmxlcywgbWFpcwpjaGFxdWUgbGlnbmUgc3VwcGzpbWVudGFpcmUsIHF1aSBuZSBjb21wb3J0ZSBwYXMgZGUgbm9tIGRlIGNoYW1wLCBkb2l0CmNvbW1lbmNlciBwYXIgYXUgbW9pbnMgdW4gZXNwYWNlLiBMZSBjb250ZW51IGRlcyBjaGFtcHMgbXVsdGlcLWxpZ25lcyBlc3QgZW4KZ+lu6XJhbCBy6WFzc2VtYmzpIGVuIHVuZSBsaWduZSB1bmlxdWUgcGFyIGxlcyBvdXRpbHMgKHNhdWYgcG91ciBsZSBjaGFtcApcZkJEZXNjcmlwdGlvblxmUCwgdm9pciBjaVwtZGVzc291cykuIFBvdXIgaW5jbHVyZSBkZXMgbGlnbmVzIHZpZGVzIGRhbnMgdW4KY2hhbXAgbXVsdGlcLWxpZ25lcywgaWwgZXN0IG7pY2Vzc2FpcmUgZGUgbWV0dHJlIHVuIHBvaW50IGFwcuhzIGwnZXNwYWNlCmluaXRpYWwuIExlcyBsaWduZXMgY29tbWVu52FudCBwYXMgXGZCq1wgI1wgu1xmUCBzb250IHRyYWl06WVzIGNvbW1lIGRlcwpjb21tZW50YWlyZXMuCi4KLlNIICJMRVMgQ0hBTVBTIFNPVVJDRSIKLlRQIApcZkJTb3VyY2U6XGZQIFxmSW5vbSBkdSBwYXF1ZXQgc291cmNlXGZQIChyZXF1aXMpCkxhIHZhbGV1ciBkZSBjZSBjaGFtcCBlc3QgbGUgbm9tIGR1IHBhcXVldCBzb3VyY2UgZXQgZG9pdCBjb3JyZXNwb25kcmUgYXUKbm9tIGR1IHBhcXVldCBzb3VyY2UgZGFucyBsZSBmaWNoaWVyIGRlYmlhbi9jaGFuZ2Vsb2cuIFVuIG5vbSBkZSBwYXF1ZXQgZG9pdArqdHJlIGNvbnN0aXR16SB1bmlxdWVtZW50IGRlIGxldHRyZXMgbWludXNjdWxlcyAoYVwteiksIGRlIGNoaWZmcmVzICgwXC05KSwKZGVzIGNhcmFjdOhyZXMgcGx1cyAoKykgZXQgbW9pbnMgKFwtKSBldCBkZSBwb2ludHMgKC4pLiBMZXMgbm9tcyBkZSBwYXF1ZXRzCmRvaXQgY29tcG9ydGVyIGF1IG1vaW5zIGRldXggY2FyYWN06HJlcyBldCBkb2l2ZW50IGNvbW1lbmNlciBwYXIgdW4KY2FyYWN06HJlIGFscGhhbnVt6XJpcXVlLgoKLlRQIApcZkJNYWludGFpbmVyOlxmUCBcZklub20gY29tcGxldCBldCBhZHJlc3NlIOlsZWN0cm9uaXF1ZVxmUCAocmVxdWlzKQpMZSBmb3JtYXQgZGUgY2UgY2hhbXAgc2VyYSCrXCBKZWFuIER1cG9udCA8amR1cG9udEBmb28uY29tPlwgu1wgOyBldAppbmRpcXVlIGxlIGNy6WF0ZXVyIGR1IHBhcXVldCwgcGFyIG9wcG9zaXRpb24g4CBsJ2F1dGV1ciBkdSBwcm9ncmFtbWUgbWlzIGVuCnBhcXVldC4KCi5UUCAKXGZCVXBsb2FkZXJzOlxmUFxmSSBub20gY29tcGxldCBldCBhZHJlc3NlIOlsZWN0cm9uaXF1ZVxmUApBZmZpY2hlIGxlcyBub21zIGV0IGxlcyBhZHJlc3NlcyDpbGVjdHJvbmlxdWVzIGRlcyBjb1wtcmVzcG9uc2FibGVzIGR1CnBhcXVldCwgYXUgbeptZSBmb3JtYXQgcXVlIGxlIGNoYW1wIE1haW50YWluZXIuIERlcyBjb1wtcmVzcG9uc2FibGVzCm11bHRpcGxlcyBwZXV2ZW50IOp0cmUgc+lwYXLpcyBwYXIgdW5lIHZpcmd1bGUuCgouVFAgClxmQlN0YW5kYXJkc1wtVmVyc2lvbjpcZlBcZkkgY2hh7m5lIGRlIHZlcnNpb25cZlAKQ2UgY2hhbXAgaW5kaXF1ZSBsYSB2ZXJzaW9uIGxhIHBsdXMgculjZW50ZSBkZXMgbm9ybWVzIChjb25zdGl0dellcyBwYXIgbGEKQ2hhcnRlIERlYmlhbiBldCBsZXMgdGV4dGVzIGluZGlxdelzIGRhbnMgbGUgcGFxdWV0IFxmQmRlYmlhblwtcG9saWN5XGZQKQphdXhxdWVsbGVzIGNlIHBhcXVldCBzZSBjb25mb3JtZS4KCi5UUCAKXGZCRE1cLVVwbG9hZFwtQWxsb3dlZDpcZlAgXGZCeWVzXGZQfFxmQm5vXGZQCkNlIGNoYW1wIGluZGlxdWUgc2kgdW4gcGFxdWV0IHBldXQg6nRyZSBlbnZveekgcGFyIGxlcyBtYWludGVuZXVycyBEZWJpYW4KcXVpIHNvbnQgaW5kaXF16XMgZGFucyBsZSBjaGFtcCBNYWludGFpbmVyIG91IGxlIGNoYW1wIFVwbG9hZGVycy4gTGEgdmFsZXVyCnBhciBk6WZhdXQgZXN0IKtcIG5vXCC7LgoKLlRQIApcZkJIb21lcGFnZTpcZlBcZkkgVVJMXGZQClVSTCBkZSBsYSBwYWdlIGQnYWNjdWVpbCBkdSBwcm9qZXQgYW1vbnQuCgouVFAgClxmQkJ1Z3M6XGZQIFxmSSBVUkxcZlAKSW5kaXF1ZSBsJ1xmSVVSTFxmUCBkdSBzeXN06G1lIGRlIHN1aXZpIGRlIGJvZ3VlcyAoQlRTKSBkZSBjZSBwYXF1ZXQuIExlIGZvcm1hdAp1dGlsaXPpIGVzdCBcZkl0eXBlX2RlX2J0c1xmUFxmQjovL1xmUFxmSWFkcmVzc2VfZHVfYnRzRVxmUCwgcGFyIGV4ZW1wbGUKXGZCZGViYnVnczovL2J1Z3MuZGViaWFuLm9yZ1xmUC4gQ2UgY2hhbXAgZXN0IGVuIGfpbulyYWwgaW51dGlsZS4KCi5UUCAKXGZCVmNzXC0qOlxmUFxmSSBVUkxcZlAKQ2UgY2hhbXAgaW5kaXF1ZSBsJ1xmSVVSTFxmUCBkdSBzeXN06G1lIGRlIGdlc3Rpb24gZGUgdmVyc2lvbiB1dGlsaXPpIHBvdXIgbGEKZ2VzdGlvbiBkdSBwYXF1ZXQuIExlcyBzeXN06G1lcyBn6XLpcyBzb250IFxmQkFyY2hcZlAsIFxmQkJ6clxmUCAoQmF6YWFyKSwgXGZCQ3ZzXGZQLApcZkJEYXJjc1xmUCwgXGZCR2l0XGZQLCBcZkJIZ1xmUCAoTWVyY3VyaWFsKSwgXGZCTXRuXGZQIChNb25vdG9uZSkgZXQgXGZCU3ZuXGZQCihTdWJ2ZXJzaW9uKS4gRW4gZ+lu6XJhbCwgY2UgY2hhbXAgZmFpdCBy6WbpcmVuY2Ug4CBsYSBkZXJuaehyZSB2ZXJzaW9uIGR1CnBhcXVldCwgYydlc3Qg4CBkaXJlIGxhIGJyYW5jaGUgcHJpbmNpcGFsZSBvdSBsZSCrXCB0cnVua1wguy4KCi5UUCAKXGZCVmNzXC1Ccm93c2VyOlxmUFxmSSBVUkxcZlAKaW5kaXF1ZSBsJ1xmSVVSTFxmUCBkZSBsJ2ludGVyZmFjZSB3ZWIgcGVybWV0dGFudCBkZSBwYXJjb3VyaXIgbGUgZOlw9HQgZHUKc3lzdOhtZSBkZSBnZXN0aW9uIGRlIHZlcnNpb24uCgouVFAgClxmQk9yaWdpbjpcZlAgXGZJIG5vbVxmUAppbmRpcXVlIGxlIG5vbSBkZSBsYSBkaXN0cmlidXRpb24gZG9udCBsZSBwYXF1ZXQgcHJvdmllbnQuIENlIGNoYW1wIG4nZXN0CnNvdXZlbnQgcGFzIG7pY2Vzc2FpcmUuCgouVFAgClxmQlNlY3Rpb246XGZQIFxmSSBzZWN0aW9uXGZQCmNoYW1wIGfpbulyYWwgcXVpIGluZGlxdWUgbGEgY2F06WdvcmllIGQndW4gcGFxdWV0XCA7IGNldHRlIGNhdOlnb3JpZSBlc3QKZm9uZOllIHN1ciBsZXMgcHJvZ3JhbW1lcyBxdWUgY2UgcGFxdWV0IGluc3RhbGxlLiCrXCBVdGlsc1wguywgq1wgbmV0XCC7LAqrXCBtYWlsXCC7LCCrXCB0ZXh0XCC7LCCrXCB4MTFcILssIGV0Yy4gcmVwculzZW50ZW50IHF1ZWxxdWVzIGNhdOlnb3JpZXMKaGFiaXR1ZWxsZXMuCgouVFAgClxmQlByaW9yaXR5OlxmUCBcZklwcmlvcml06VxmUApk6WZpbml0IGwnaW1wb3J0YW5jZSBkdSBwYXF1ZXQg4CBsJ2ludOlyaWV1ciBkdSBzeXN06G1lCmfpbulyYWwuIKtcIFJlcXVpcmVkXCC7LCCrXCBzdGFuZGFyZFwguywgq1wgb3B0aW9uYWxcILssIKtcIGV4dHJhXCC7LApldGMuIHJlcHLpc2VudGVudCBkZXMgcHJpb3JpdOlzIGhhYml0dWVsbGVzLgoKTGVzIGNoYW1wcyBcZkJTZWN0aW9uXGZQIGV0IFxmQlByaW9yaXR5XGZQIHBvc3PoZGVudCB1biBlbnNlbWJsZSBk6WZpbmkgZGUgdmFsZXVycwphY2NlcHTpZXMsIHRpcukgZGUgbGEgQ2hhcnRlIERlYmlhbiAoq1wgRGViaWFuIFBvbGljeVwguykuIE9uIHBldXQgZW4gdHJvdXZlcgp1bmUgbGlzdGUgZGFucyBsYSB2ZXJzaW9uIGxhIHBsdXMgculjZW50ZSBkdSBwYXF1ZXQgXGZCZGViaWFuXC1wb2xpY3lcZlAuCgouVFAgClxmQkJ1aWxkXC1EZXBlbmRzOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCmxpc3RlIGRlcyBwYXF1ZXRzIHF1J2lsIGVzdCBu6WNlc3NhaXJlIGQnaW5zdGFsbGVyIGV0IGNvbmZpZ3VyZXIgcG91cgpwb3V2b2lyIGNvbnN0cnVpcmUgbGUgcGFxdWV0IHNvdXJjZS4KCi5UUCAKXGZCQnVpbGRcLURlcGVuZHNcLUluZGVwOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCmxpc3RlIGFuYWxvZ3VlIOAgXGZCQnVpbGRcLURlcGVuZHNcZlAsIG1haXMgcmVzdHJlaW50ZSBhdXggcGFxdWV0cyBu6WNlc3NhaXJlcwpwb3VyIGNvbnN0cnVpcmUgbGVzIHBhcXVldHMgaW5k6XBlbmRhbnRzIGRlIGwnYXJjaGl0ZWN0dXJlLiBMZXMgcGFxdWV0cwppbmRpcXXpcyBkYW5zIFxmQkJ1aWxkXC1EZXBlbmRzXGZQIHNvbnQgYWxvcnMgYXVzc2kgaW5zdGFsbOlzLgoKLlRQIApcZkJCdWlsZFwtQ29uZmxpY3RzOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCmxpc3RlIGRlIHBhcXVldHMgcXVpIG5lIGRvaXZlbnQgcGFzIOp0cmUgaW5zdGFsbOlzIGxvcnNxdWUgbGUgcGFxdWV0IGVzdApjb25zdHJ1aXQsIHBhciBleGVtcGxlIHMnaWxzIGludGVyZuhyZW50IGF2ZWMgbGUgc3lzdOhtZSBkZSBjb25zdHJ1Y3Rpb24KdXRpbGlz6S4KCi5UUCAKXGZCQnVpbGRcLUNvbmZsaWN0c1wtSW5kZXA6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKbGlzdGUgYW5hbG9ndWUg4CBcZkJCdWlsZFwtQ29uZmxpY3RzXGZQIG1haXMgcmVzdHJlaW50ZSDgIGxhIGNvbnN0cnVjdGlvbiBkZXMKcGFxdWV0cyBpbmTpcGVuZGFudHMgZGUgbCdhcmNoaXRlY3R1cmUuCgpMYSBzeW50YXhlIGRlcyBjaGFtcHMgXGZCQnVpbGRcLURlcGVuZHNcZlAgXGZCQnVpbGRcLURlcGVuZHNcLUluZGVwXGZQZXN0IHVuZSBsaXN0ZQpkZSBncm91cGVzIGNvbnRlbmFudCBkZXMgcGFxdWV0cyBzdWNjZXNzaWZzLiBDaGFxdWUgZ3JvdXBlIGVzdCB1bmUgbGlzdGUgZGUKcGFxdWV0cyBz6XBhculzIHBhciB1bmUgYmFycmUgdmVydGljYWxlIChsZSBzeW1ib2xlIGR1IHR1YmUpIKtcIHxcILsuIExlcwpncm91cGVzIHNvbnQgc+lwYXLpcyBwYXIgZGVzIHZpcmd1bGVzLiBVbmUgdmlyZ3VsZSByZXBy6XNlbnRlIHVuIKtcIEVUXCC7CmxvZ2lxdWUgZXQgdW5lIGJhcnJlIHZlcnRpY2FsZSByZXBy6XNlbnRlIHVuIKtcIE9VXCC7IGxvZ2lxdWVcIDsgbGUgdHViZQpyZXBy6XNlbnRlIHVuIGxpZW4gcGx1cyBmb3J0LiBDaGFxdWUg6WzpbWVudCBlc3QgbGUgbm9tIGQndW4gcGFxdWV0IHN1aXZpIGRlCmZh529uIG9wdGlvbm5lbGxlIHBhciB1biBudW3pcm8gZGUgdmVyc2lvbiBlbnRyZSBwYXJlbnRo6HNlcyBldCB1bmUKaW5kaWNhdGlvbiBkJ2FyY2hpdGVjdHVyZSBlbnRyZSBhY2NvbGFkZXMuCgpMYSBzeW50YXhlIGRlcyBjaGFtcHMgXGZCQnVpbGRcLUNvbmZsaWN0c1xmUCBcZkJCdWlsZFwtQ29uZmxpY3RzXC1JbmRlcFxmUGVzdCB1bmUKbGlzdGUgZGUgcGFxdWV0cyBz6XBhculzIHBhciBkZXMgdmlyZ3VsZXMgcXVpIHJlcHLpc2VudGVudCBsZSCrXCBFVFwguwpsb2dpcXVlLiBMJ2luZGljYXRpb24gZGUgcGFxdWV0cyBhbHRlcm5hdGlmcyBhdmVjIHVuZSBiYXJyZSB2ZXJ0aWNhbGUgKGxlCnN5bWJvbGUgZHUgdHViZSkgq1wgfFwguyBuJ2VzdCBwYXMgcHJpc2UgZW4gY2hhcmdlLiBDaGFxdWUgb20gZGUgcGFxdWV0IHBldXQK6nRyZSBzdWl2aSBkZSBmYedvbiBvcHRpb25uZWxsZSBwYXIgdW4gbnVt6XJvIGRlIHZlcnNpb24gZW50cmUgcGFyZW50aOhzZXMKZXQgdW5lIGluZGljYXRpb24gZCdhcmNoaXRlY3R1cmUgZW50cmUgYWNjb2xhZGVzLgoKVW4gbnVt6XJvIGRlIHZlcnNpb24gcGV1dCBjb21tZW5jZXIgcGFyIKtcID4+XCC7LCBldCBkYW5zIGNlIGNhcyB0b3V0ZQp2ZXJzaW9uIHN1cOlyaWV1cmUgY29ycmVzcG9uZHJhLCBldCBpbCBwZXV0IGluZGlxdWVyIChvdSBwYXMpIGxlIG51belybyBkZQpy6XZpc2lvbiBwb3VyIGxlIHBhcXVldCBEZWJpYW4gKGxlcyBkZXV4IG51belyb3Mg6XRhbnQgc+lwYXLpcyBwYXIgdW4gdHJhaXQKZCd1bmlvbikuIFZvaWNpIGxlcyByZWxhdGlvbnMgYWNjZXB06WVzIHBvdXIgbGVzIHZlcnNpb25zXCA6IKtcID4+XCC7CnBvdXIgc3Vw6XJpZXVyIOAsIKtcIDw8XCC7IHBvdXIgaW5m6XJpZXVyIOAsIKtcID49XCC7IHBvdXIgc3Vw6XJpZXVyCm91IOlnYWwsIKtcIDw9XCC7IHBvdXIgaW5m6XJpZXVyIG91IOlnYWwsIGV0IKtcID1cILsgcG91ciDpZ2FsIOAuCgpVbmUgaW5kaWNhdGlvbiBkJ2FyY2hpdGVjdHVyZSBjb25zaXN0ZSBlbiB1biBvdSBwbHVzaWV1cnMgbm9tcwpkJ2FyY2hpdGVjdHVyZXMsIHPpcGFy6XMgcGFyIGRlcyBlc3BhY2VzLiBVbiBub20gZCdhcmNoaXRlY3R1cmUgcGV1dCDqdHJlCnBy6WPpZOkgZCd1biBwb2ludCBkJ2VjbGFtYXRpb24gcXVpIGNvcnJlc3BvbmQgYWxvcnMgYXUgq1wgTk9OXCC7IGxvZ2lxdWUuCgpWZXVpbGxleiBub3RlciBxdWUgbGVzIGTpcGVuZGFuY2UgcXVlIGxlcyBwYXF1ZXRzIGR1IGpldSBcZkJidWlsZFwtZXNzZW50aWFsXGZQCnBldXZlbnQg6nRyZSBvbWlzZXMgZXQgcXUnaWwgbidlc3QgcGFzIHBvc3NpYmxlIGRlIGTpY2xhcmVyIGRlcyBjb25mbGl0cwphdmVjIGNlcyBwYXF1ZXRzLiBMYSBsaXN0ZSBkZXMgcGFxdWV0cyBjb25jZXJu6XMgZXN0IGZvdXJuaWUgcGFyIGxlIHBhcXVldApidWlsZFwtZXNzZW50aWFsLgoKCi5TSCAiQ0hBTVBTIEJJTkFJUkVTIgoKLkxQClZldWlsbGV6IG5vdGVyIHF1ZSBsZXMgY2hhbXBzIFxmQlByaW9yaXR5XGZQLCBcZkJTZWN0aW9uXGZQIGFuZCBcZkJIb21lcGFnZVxmUApwZXV2ZW50IOp0cmUgcGxhY+lzIGRhbnMgbGUgcGFyYWdyYXBoZSBkJ3VuIHBhcXVldCBiaW5haXJlIGV0IGxldXIgdmFsZXVyCnJlbXBsYWNlIGFsb3JzIGNlbGxlIGR1IHBhcXVldCBzb3VyY2UuCgouVFAgClxmQlBhY2thZ2U6XGZQIFxmSW5vbSBkdSBwYXF1ZXQgYmluYWlyZVxmUCAocmVxdWlzKQpDZSBjaGFtcCBzZXJ0IOAgaW5kaXF1ZXIgbGUgbm9tIGR1IHBhcXVldCBiaW5haXJlLiBMZXMgcmVzdHJpY3Rpb25zIHNvbnQgbGVzCm3qbWVzIHF1ZSBjZWxsZSBkZXMgcGFxdWV0cyBzb3VyY2UuCgouVFAgClxmQkFyY2hpdGVjdHVyZTpcZlAgXGZJYXJjaFxmUHxcZkJhbGxcZlB8XGZCYW55XGZQIChyZXF1aXMpCkNlIGNoYW1wIGluZGlxdWUgbCdhcmNoaXRlY3R1cmUgbWF06XJpZWxsZSBzdXIgbGFxdWVsbGUgbGUgcGFxdWV0IHBldXQg6nRyZQp1dGlsaXPpLiBMZXMgcGFxdWV0cyBxdWkgcGV1dmVudCDqdHJlIHV0aWxpc+lzIHN1ciB0b3V0ZSBhcmNoaXRlY3R1cmUKZG9pdmVudCB1dGlsaXNlciBsZSBjaGFtcCBcZkJhbnlcZlAuIExlcyBwYXF1ZXRzIGluZOlwZW5kYW50cyBkZQpsJ2FyY2hpdGVjdHVyZSwgdGVscyBsZXMgc2NyaXB0cyBzaGVsbCBvdSBQZXJsIG91IGxhIGRvY3VtZW50YXRpb24gdXRpbGlzZW50CmxhIHZhbGV1ciBcZkJhbGxcZlAuIFBvdXIgcmVzdHJlaW5kcmUgdW4gcGFxdWV0IOAgY2VydGFpbmVzIGFyY2hpdGVjdHVyZXMsCmxldXJzIG5vbXMgZG9pdmVudCDqdHJlIGluZGlxdelzIHPpcGFy6XMgcGFyIGRlcyBlc3BhY2VzLiBJbCBlc3Qg6WdhbGVtZW50CnBvc3NpYmxlIGQndXRpbGlzZXIgZGVzIG5vbXMgZ+lu6XJpcXVlcyBkJ2FyY2hpdGVjdHVyZXMgZGFucyBjZXR0ZSBsaXN0ZQoodm9pciBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAoMSkgcG91ciBwbHVzIGQnaW5mb3JtYXRpb25zIHN1ciBjZXMgYXJjaGl0ZWN0dXJlcwpn6W7pcmlxdWVzKS4KCi5UUCAKXGZCUGFja2FnZVwtVHlwZTpcZlAgXGZCZGViXGZQfFxmQnVkZWJcZlAKQ2UgY2hhbXAgaW5kaXF1ZSBsZSB0eXBlIGRlIHBhcXVldC4gTGEgdmFsZXVyIKtcIHVkZWJcILsgZXN0IOAgdXRpbGlzZXIgcG91cgpsZXMgcGFxdWV0cyDgIHRhaWxsZSBjb250cvRs6WUgdXRpbGlz6XMgcGFyIGwnaW5zdGFsbGF0ZXVyIERlYmlhbi4gTGEgdmFsZXVyCqtcIGRlYlwguyBlc3QgbGEgdmFsZXVyIHBhciBk6WZhdXQgcXVpIGVzdCB1dGlsaXPpZSBzaSBsZSBjaGFtcCBuJ2VzdCBwYXMKcHLpc2VudC4gRGUgbm91dmVhdXggdHlwZXMgcG91cnJhaWVudCDqdHJlIGFqb3V06XMgYXUgZmlsIGR1IHRlbXBzLgoKLlRQIAouUEQgMApcZkJTdWJhcmNoaXRlY3R1cmU6XGZQXGZJIHZhbGV1clxmUAouVFAgCi5QRCAwClxmQktlcm5lbFwtVmVyc2lvbjpcZlBcZkkgdmFsZXVyXGZQCi5UUCAKLlBEIDAKXGZCSW5zdGFsbGVyXC1NZW51XC1JdGVtOlxmUFxmSSB2YWxldXJcZlAKQ2VzIGNoYW1wcyBzb250IHV0aWxpc+lzIHBhciBsJ2luc3RhbGxhdGV1ciBldCBuZSBzb250IGVuIGfpbulyYWwgcGFzCm7pY2Vzc2FpcmVzLiBWZXVpbGxleiBjb25zdWx0ZXIKL3Vzci9zaGFyZS9kb2MvZGViaWFuXC1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgIGZvdXJuaSBhdmVjIGxlIHBhcXVldApcZkJkZWJpYW5cLWluc3RhbGxlclxmUCBwb3VyIHBsdXMgZGUgZOl0YWlscy4KCi5UUCAKLlBEIDAKXGZCRXNzZW50aWFsOlxmUCBcZkJ5ZXNcZlB8XGZCbm9cZlAKLlRQIAouUEQgMApcZkJNdWx0aVwtQXJjaDpcZlAgXGZCc2FtZVxmUHxcZkJmb3JlaWduXGZQfFxmQmFsbG93ZWRcZlAKLlRQIAouUEQgMApcZkJUYWc6XGZQIFxmSWxpc3RlIGQn6XRpcXVldHRlc1xmUAouVFAgCi5QRCAwClxmQkRlc2NyaXB0aW9uOlxmUCBcZklkZXNjcmlwdGlvbiBjb3VydGVcZlAgKHJlcXVpcykKQ2VzIGNoYW1wcyBzb250IGTpY3JpdHMgZGFucyBsYSBwYWdlIGRlIG1hbnVlbCBkZSBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIGNhciBpbHMKc29udCBjb3Bp6XMgbGl0dOlyYWxlbWVudCBkYW5zIGxlIGZpY2hpZXIgq1wgY29udHJvbFwguyBkdSBwYXF1ZXQgYmluYWlyZS4KCi5UUCAKLlBEIDAKXGZCRGVwZW5kczpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAouVFAgCi5QRCAwClxmQlByZVwtRGVwZW5kczpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAouVFAgCi5QRCAwClxmQlJlY29tbWVuZHM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKLlRQIAouUEQgMApcZkJTdWdnZXN0czpcZlBcZklsaXN0ZSBkZSBwYXF1ZXRzXGZQCi5UUCAKLlBEIDAKXGZCQnJlYWtzOlxmUFxmSWxpc3RlIGRlIHBhcXVldHNcZlAKLlRQIAouUEQgMApcZkJFbmhhbmNlczpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAouVFAgCi5QRCAwClxmQlJlcGxhY2VzOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCi5UUCAKLlBEIDAKXGZCQ29uZmxpY3RzOlxmUFxmSWxpc3RlIGRlIHBhcXVldHNcZlAKLlRQIAouUEQgMApcZkJQcm92aWRlczpcZlAgXGZJbGlzdGUgZGUgcGFxdWV0c1xmUAouVFAgCi5QRCAwClxmQkJ1aWx0XC1Vc2luZzpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAouYnIKQ2VzIGNoYW1wcyBpbmRpcXVlbnQgbGVzIHJlbGF0aW9ucyBlbnRyZSBsZXMgcGFxdWV0cy4gSWxzIHNvbnQgZOl0YWlsbOlzCmRhbnMgbGEgcGFnZSBkZSBtYW51ZWwgXGZCZGViXC1jb250cm9sXGZQKDUpIGV0IGRhbnMgbGUgcGFxdWV0IFxmQmRlYmlhblwtcG9saWN5XGZQLgoKLlNIICJMRVMgQ0hBTVBTIFVUSUxJU0FURVVSIgpJbCBlc3QgcG9zc2libGUgZCdham91dGVyIGRlcyBjaGFtcHMgZOlmaW5pcyBwYXIgbCd1dGlsaXNhdGV1ciBhdSBmaWNoaWVyCqtcIGNvbnRyb2xcILsuIExlcyBvdXRpbHMgbGVzIGlnbm9yZXJvbnQuIFNpIGNlcyBjaGFtcHMgZG9pdmVudCDqdHJlIGNvcGnpcwp2ZXJzIGxlcyBmaWNoaWVycyBjcunpcywgcGFyIGV4ZW1wbGUgbGVzIHBhcXVldHMgYmluYWlyZXMsIGlsIGVzdAppbmRpc3BlbnNhYmxlIGQndXRpbGlzZXIgdW4gc2No6W1hIGRlIG5vbW1hZ2UgcGVyc29ubmFsaXPpXCA6XCBsZXMgY2hhbXBzCmRvaXZlbnQgY29tbWVuY2VyIHBhciBsYSBsZXR0cmUgWCBzdWl2aWUgZGUgbCd1biBkZXMgbGV0dHJlcyBCLCBDIG91IFMgZXQKZCd1biB0aXJldC4gU2kgbGEgbGV0dHJlIEIgZXN0IHV0aWxpc+llLCBsZSBjaGFtcCBzZXJhIGNvcGnpIGRhbnMgbGUgZmljaGllcgqrXCBjb250cm9sXCC7IGR1IHBhcXVldCBiaW5haXJlLCB2b2lyIFxmQmRlYlwtY29udHJvbFxmUCg1KS4gQXZlYyBsYSBsZXR0cmUgUywgbGUKY2hhbXAgc2VyYSBjb3Bp6SBkYW5zIGxlIGZpY2hpZXIgq1wgY29udHJvbFwguyBkdSBwYXF1ZXQgc291cmNlIGNy6ekgcGFyClxmQmRwa2dcLXNvdXJjZVxmUCgxKS4gRW5maW4sIGxhIGxldHRyZSBDIHByb3ZvcXVlcmEgbGEgcmVjb3BpZSBkdSBjaGFtcCBkYW5zIGxlCmZpY2hpZXIgZGUgY29udHL0bGUgZGUgbCdlbnZvaSAoq1wgLmNoYW5nZXNcILspLiBMZXMgcHLpZml4ZXMgWFtCQ1NdXC0gc29udApzdXBwcmlt6XMgbG9ycyBkZSBjZXMgcmVjb3BpZXMuIEFpbnNpLCB1biBjaGFtcCBcZkJYQ1wtQXBwcm92ZWRcLUJ5XGZQIGFwcGFyYe50cmEKc291cyBsZSBub20gXGZCQXBwcm92ZWRcLUJ5XGZQIGRhbnMgbGUgZmljaGllciCrXCBjaGFuZ2VzXCC7IG1haXMgcGFzIGRhbnMgbGUKZmljaGllciCrXCBjb250cm9sXCC7IGR1IHBhcXVldCBiaW5haXJlIG5pIGRhbnMgY2VsdWkgZHUgcGFxdWV0IHNvdXJjZS4KCgouU0ggRVhFTVBMRQouXCIgLlJTCi5uZgojIENvbW1lbnQKU291cmNlOiBkcGtnClNlY3Rpb246IGFkbWluClByaW9yaXR5OiByZXF1aXJlZApNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgPGRlYmlhblwtZHBrZ0BsaXN0cy5kZWJpYW4ub3JnPgojIHRoaXMgZmllbGQgaXMgY29waWVkIHRvIHRoZSBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlcwpYQlNcLVVwc3RyZWFtXC1SZWxlYXNlXC1TdGF0dXM6IHN0YWJsZQpIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnClZjc1wtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXQKVmNzXC1HaXQ6IGdpdDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cuZ2l0ClN0YW5kYXJkc1wtVmVyc2lvbjogMy43LjMKQnVpbGRcLURlcGVuZHM6IHBrZ1wtY29uZmlnLCBkZWJoZWxwZXIgKD49IDQuMS44MSksCiBsaWJzZWxpbnV4MVwtZGV2ICg+PSAxLjI4XC00KSBbIWxpbnV4XC1hbnldCgpQYWNrYWdlOiBkcGtnXC1kZXYKU2VjdGlvbjogdXRpbHMKUHJpb3JpdHk6IG9wdGlvbmFsCkFyY2hpdGVjdHVyZTogYWxsCiMgdGhpcyBpcyBhIGN1c3RvbSBmaWVsZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UKWEJcLU1lbnRvcmluZ1wtQ29udGFjdDogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CkRlcGVuZHM6IGRwa2cgKD49IDEuMTQuNiksIHBlcmw1LCBwZXJsXC1tb2R1bGVzLCBjcGlvICg+PSAyLjQuMlwtMiksCiBiemlwMiwgbHptYSwgcGF0Y2ggKD49IDIuMlwtMSksIG1ha2UsIGJpbnV0aWxzLCBsaWJ0aW1lZGF0ZVwtcGVybApSZWNvbW1lbmRzOiBnY2MgfCBjXC1jb21waWxlciwgYnVpbGRcLWVzc2VudGlhbApTdWdnZXN0czogZ251cGcsIGRlYmlhblwta2V5cmluZwpDb25mbGljdHM6IGRwa2dcLWNyb3NzICg8PCAyLjAuMCksIGRldnNjcmlwdHMgKDw8IDIuMTAuMjYpClJlcGxhY2VzOiBtYW5wYWdlc1wtcGwgKDw9IDIwMDUxMTE3XC0xKQpEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHMKIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnXC1zb3VyY2UpCiByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy4KIC4KIE1vc3QgRGViaWFuIHNvdXJjZSBwYWNrYWdlcyB3aWxsIHJlcXVpcmUgYWRkaXRpb25hbCB0b29scyB0byBidWlsZDsKIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLgouZmkKCgouXCIgLlJFCi5TSCAiVk9JUiBBVVNTSSIKXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkZWJcLXZlcnNpb25cZlAoNSksIFxmQmRwa2dcLXNvdXJjZVxmUCgxKQouU0ggVFJBRFVDVElPTgpBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgpQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCk5pY29sYXMgRnJhbudvaXMsIDIwMDYuClZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4K