diff --git a/skills/lucid/SKILL.md b/skills/lucid/SKILL.md index 9e22683..2e4e076 100644 --- a/skills/lucid/SKILL.md +++ b/skills/lucid/SKILL.md @@ -1,143 +1 @@ -LS0tCm5hbWU6IGx1Y2lkCmRlc2NyaXB0aW9uOiA+CiAgVGhpcyBza2lsbCBzaG91bGQgYmUgdXNl -ZCBmb3IgYW55IHRhc2sgaW52b2x2aW5nIEx1Y2lkY2hhcnQgb3IgTHVjaWRzcGFyayBkb2N1bWVu -dHMuCiAgVHJpZ2dlcnMgb246ICJmaW5kIG15IEx1Y2lkIGRpYWdyYW0iLCAic2VhcmNoIEx1Y2lk -Y2hhcnQiLCAiY3JlYXRlIGEgZGlhZ3JhbSBpbiBMdWNpZCIsCiAgImJ1aWxkIGEgZmxvd2NoYXJ0 -IiwgIm1ha2UgYSBwcm9jZXNzIGRpYWdyYW0iLCAiZ2VuZXJhdGUgYSBzZXF1ZW5jZSBkaWFncmFt -IiwgImNyZWF0ZQogIGFuIG9yZyBjaGFydCIsICJidWlsZCBhbiBvcmcgY2hhcnQgZnJvbSB0aGlz -IGRhdGEiLCAic2hhcmUgYSBMdWNpZCBkb2N1bWVudCIsICJjcmVhdGUKICBhIHNoYXJlIGxpbmsg -Zm9yIiwgInN1bW1hcml6ZSB0aGlzIEx1Y2lkIGJvYXJkIiwgIndoYXQncyBvbiBteSBMdWNpZCBj -YW52YXMiLAogICJ0dXJuIHRoaXMgaW50byBhIGRpYWdyYW0iLCAiZGlhZ3JhbSB0aGlzIHdvcmtm -bG93IiwgInZpc3VhbGl6ZSB0aGlzIHByb2Nlc3MiLAogICJjcmVhdGUgYSB1c2VyIGZsb3ciLCAi -YnVpbGQgYW4gYXJjaGl0ZWN0dXJlIGRpYWdyYW0gaW4gTHVjaWQiLCAiY29udmVydCB0aGlzIFNW -RyB0bwogIEx1Y2lkIiwgInB1c2ggdGhpcyBkaWFncmFtIHRvIEx1Y2lkIiwgIm1ha2UgdGhpcyBl -ZGl0YWJsZSBpbiBMdWNpZGNoYXJ0Iiwgb3IgYW55CiAgcmVmZXJlbmNlIHRvIEx1Y2lkY2hhcnQs -IEx1Y2lkc3BhcmssIG9yIEx1Y2lkIGRvY3VtZW50cy4KbWV0YWRhdGE6CiAgdmVyc2lvbjogIjAu -Mi4wIgogIGF1dGhvcjogIk1lc3NhZ2UgUG9pbnQgTWVkaWEiCi0tLQoKIyBMdWNpZCBNQ1AgU2tp -bGwKClRoaXMgc2tpbGwgY29ubmVjdHMgQ29Xb3JrIHRvIHRoZSBMdWNpZCBNQ1Agc2VydmVyLCBl -bmFibGluZyBDbGF1ZGUgdG8gc2VhcmNoLCByZWFkLCBnZW5lcmF0ZSwgYW5kIHNoYXJlIEx1Y2lk -Y2hhcnQgYW5kIEx1Y2lkc3BhcmsgZG9jdW1lbnRzIG9uIGJlaGFsZiBvZiB0aGUgdXNlci4KCiMj -IEF2YWlsYWJsZSBUb29scwoKVGhlIGBsdWNpZGAgTUNQIHNlcnZlciBleHBvc2VzIHRoZSBmb2xs -b3dpbmcgY2FwYWJpbGl0aWVzLiBVc2UgdGhlbSBkaXJlY3RseSB3aGVuIHRoZSB1c2VyJ3MgcmVx -dWVzdCBtYXBzIHRvIG9uZSBvZiB0aGVzZSBhY3Rpb25zOgoKIyMjIDEuIFNlYXJjaCBEb2N1bWVu -dHMKRmluZCBkaWFncmFtcyBvciBib2FyZHMgYWNyb3NzIHRoZSB1c2VyJ3MgTHVjaWQgbGlicmFy -eSB1c2luZyBuYXR1cmFsIGxhbmd1YWdlLgoKKipXaGVuIHRvIHVzZToqKiBVc2VyIGFza3MgdG8g -ZmluZCBhIGRpYWdyYW0sIGxvY2F0ZSBhIGJvYXJkLCByZXRyaWV2ZSBhIGRvY3VtZW50LCBvciBh -c2tzICJkbyBJIGhhdmUgYSBkaWFncmFtIGZvciBYPyIKCioqQXBwcm9hY2g6KiogQ2FsbCB0aGUg -THVjaWQgc2VhcmNoIHRvb2wgd2l0aCBkZXNjcmlwdGl2ZSBxdWVyeSB0ZXJtcy4gUmV0dXJuIHRo -ZSBkb2N1bWVudCB0aXRsZSBhbmQgYSBkaXJlY3QgbGluay4gSWYgbXVsdGlwbGUgcmVzdWx0cywg -bGlzdCB0aGVtIHdpdGggdGl0bGVzIGFuZCBhc2sgd2hpY2ggb25lIHRvIHVzZS4KCiMjIyAyLiBT -dW1tYXJpemUgLyBSZWFkIERvY3VtZW50IENvbnRlbnQKR2V0IHRoZSBjb250ZW50LCBzdHJ1Y3R1 -cmUsIG9yIGtleSBlbGVtZW50cyBvZiBhbiBleGlzdGluZyBMdWNpZCBkb2N1bWVudC4KCioqV2hl -biB0byB1c2U6KiogVXNlciBhc2tzICJ3aGF0J3MgaW4gdGhpcyBkaWFncmFtPyIsICJzdW1tYXJp -emUgdGhpcyBib2FyZCIsICJ3aGF0IGRvZXMgdGhpcyBhcmNoaXRlY3R1cmUgZGlhZ3JhbSBzaG93 -PyIsIG9yIGF0dGFjaGVzIGEgTHVjaWQgbGluayBhbmQgYXNrcyBxdWVzdGlvbnMgYWJvdXQgaXQu -CgoqKkFwcHJvYWNoOioqIFJldHJpZXZlIHRoZSBkb2N1bWVudCBjb250ZW50IGFuZCBzeW50aGVz -aXplIGEgY2xlYXIgc3VtbWFyeS4gUmVmZXJlbmNlIHNwZWNpZmljIHNoYXBlcywgbGFiZWxzLCBh -bmQgY29ubmVjdGlvbnMgYnkgbmFtZS4gQWx3YXlzIGluY2x1ZGUgYSBsaW5rIGJhY2sgdG8gdGhl -IHNvdXJjZSBkb2N1bWVudC4KCiMjIyAzLiBDcmVhdGUgYSBEaWFncmFtIChTVkcgcGF0aCDigJQg -cHJlZmVycmVkIGZvciBtb3N0IGRpYWdyYW1zKQpHZW5lcmF0ZSBhIG5ldyBMdWNpZCBkaWFncmFt -IGJ5IGZpcnN0IHByb2R1Y2luZyBhbiBTVkcsIHRoZW4gY29udmVydGluZyBpdCBkaXJlY3RseSB0 -byBMdWNpZGNoYXJ0LgoKKipUT09MIFJPVVRJTkcgUlVMRSDigJQgcmVhZCB0aGlzIGV2ZXJ5IHRp -bWU6KioKLSAqKlVzZSBgbHVjaWRfY29udmVydF9zdmdfdG9fZGlhZ3JhbWAqKiAoU1ZHIHBhdGgp -IHdoZW4gdGhlIGRpYWdyYW0gaXMgYSBmbG93Y2hhcnQsIHByb2Nlc3MgZmxvdywgbmV0d29yayBk -aWFncmFtLCBFUiBkaWFncmFtLCB1c2VyIGZsb3csIGFyY2hpdGVjdHVyZSBkaWFncmFtLCBvciBh -bnkgZGlhZ3JhbSBidWlsdCBmcm9tIHN0YW5kYXJkIHNoYXBlcy4gVGhpcyBpcyB0aGUgcHJlZmVy -cmVkIHBhdGgg4oCUIGl0IHByb2R1Y2VzIGJldHRlciBvdXRwdXQsIHByZXNlcnZlcyBjb2xvcnMs -IGFuZCBoYW5kbGVzIGN1c3RvbS9icmFuZGVkIHNoYXBlcy4KLSAqKlVzZSBgbHVjaWRfY3JlYXRl -X2RpYWdyYW1fZnJvbV9zcGVjaWZpY2F0aW9uYCoqIChKU09OIHNwZWMgcGF0aCkgT05MWSB3aGVu -IHRoZSBkaWFncmFtIHJlcXVpcmVzIEx1Y2lkLW5hdGl2ZSBzaGFwZSB0eXBlcyB3aXRoIG5vIG5h -dHVyYWwgU1ZHIGVxdWl2YWxlbnQ6IEJQTU4gcG9vbHMsIFVNTCBjbGFzcyBibG9ja3MsIG5hbWVk -IEFXUy9HQ1AvQXp1cmUgbGlicmFyeSBzaGFwZXMsIGx1Y2lkQ2FyZCwgb3IgdGFibGVzLgotICoq -VXNlIGBsdWNpZF9jcmVhdGVfc2VxdWVuY2VfZGlhZ3JhbWAqKiBmb3Igc2VxdWVuY2UgZGlhZ3Jh -bXMgKFBsYW50VU1MIGlucHV0KS4KLSAqKlVzZSBgbHVjaWRfY3JlYXRlX29yZ19jaGFydGAqKiBm -b3Igb3JnL2hpZXJhcmNoeSBjaGFydHMuCgoqKlNWRyBwYXRoIGFwcHJvYWNoOioqCjEuIEdlbmVy -YXRlIHRoZSBTVkcgaW4gZnVsbCDigJQgdXNlIGA8cmVjdD5gLCBgPHBvbHlnb24+YCwgYDxlbGxp -cHNlPmAsIGA8Y2lyY2xlPmAsIGA8bGluZT5gLCBgPHBhdGg+YCwgYDx0ZXh0PmAuIEFwcGx5IGNv -bG9ycyB2aWEgaW5saW5lIGZpbGwvc3Ryb2tlIGF0dHJpYnV0ZXMuIEluY2x1ZGUgYDxkZWZzPjxt -YXJrZXI+YCBmb3IgYXJyb3cgaGVhZHMuCjIuIFBhc3MgdGhlIFNWRyAqKnZlcmJhdGltKiogdG8g -YGx1Y2lkX2NvbnZlcnRfc3ZnX3RvX2RpYWdyYW1gIOKAlCBkbyBOT1Qgc2ltcGxpZnkgb3IgcmV3 -cml0ZSBpdCBmaXJzdC4KMy4gUmV0dXJuIHRoZSBlZGl0IGxpbmsgdG8gdGhlIGNyZWF0ZWQgZG9j -dW1lbnQuCgoqKkN1c3RvbSBzaGFwZXMgdmlhIFNWRzoqKgpJZiB0aGUgdXNlciBoYXMgYSBjdXN0 -b20gc2hhcGUgKGFuIGljb24sIGhhcmR3YXJlIG91dGxpbmUsIGJyYW5kZWQgZWxlbWVudCksIGl0 -IGNhbiBiZSBlbWJlZGRlZCBkaXJlY3RseSBpbnRvIHRoZSBTVkcgYmVmb3JlIGNvbnZlcnNpb24u -IFRoZSByZXN1bHRpbmcgTHVjaWQgZG9jdW1lbnQgY29udGFpbnMgaXQgYXMgYW4gZWRpdGFibGUg -ZWxlbWVudCDigJQgZXF1aXZhbGVudCB0byB1c2luZyBpdCBmcm9tIGEgc2hhcGUgbGlicmFyeS4g -QXNrIHRoZSB1c2VyIHRvIHByb3ZpZGUgdGhlIFNWRyBzb3VyY2Ugb2YgdGhlaXIgY3VzdG9tIHNo -YXBlLCB0aGVuIGNvbXBvc2UgaXQgaW50byB0aGUgZGlhZ3JhbSBTVkcgYmVmb3JlIGNhbGxpbmcg -dGhlIHRvb2wuCgoqKk5vdGU6KiogQ3VzdG9tIHVzZXIgc2hhcGUgbGlicmFyaWVzICgiTXkgTGli -cmFyeSIgaW4gTHVjaWQpIGFyZSBOT1QgYWNjZXNzaWJsZSB2aWEgdGhlIE1DUCBBUEkuIE9ubHkg -QVdTIDIwMjQsIEdDUCAyMDIxLCBhbmQgQXp1cmUgMjAyNCBsaWJyYXJpZXMgYXJlIGV4cG9zZWQg -dmlhIGBnZXRfbWNwX3Jlc291cmNlYC4gVXNlIHRoZSBTVkcgZW1iZWQgYXBwcm9hY2ggZm9yIGN1 -c3RvbSBzaGFwZXMuCgoqKkNvbW1vbiBkaWFncmFtIHR5cGVzIGF0IE1QTToqKgotIFRyYW5zaXQg -ZGlzcGxheSBuZXR3b3JrIGFyY2hpdGVjdHVyZSBkaWFncmFtcwotIEhhcmR3YXJlL3NvZnR3YXJl -IGludGVncmF0aW9uIGZsb3dzCi0gSGVscGRlc2sgZXNjYWxhdGlvbiBwcm9jZXNzIGZsb3dzCi0g -T25ib2FyZGluZyB3b3JrZmxvd3MKLSBBUEkgc2VxdWVuY2UgZGlhZ3JhbXMgKFJETUMg4oaUIGRp -c3BsYXkgY29tbXMpCi0gUHJvamVjdCBtaWxlc3RvbmUgZmxvd3MKCiMjIyA0LiBDcmVhdGUgYW4g -T3JnIENoYXJ0CkdlbmVyYXRlIGFuIG9yZyBjaGFydCBmcm9tIGEgdGV4dCBkZXNjcmlwdGlvbiBv -ZiBoaWVyYXJjaHkgb3IgYSBDU1YgZGF0YXNldC4KCioqV2hlbiB0byB1c2U6KiogVXNlciBzYXlz -ICJidWlsZCBhbiBvcmcgY2hhcnQiLCAidmlzdWFsaXplIG91ciB0ZWFtIHN0cnVjdHVyZSIsICJj -cmVhdGUgYSBoaWVyYXJjaHkgZGlhZ3JhbSIsICJtYXAgb3V0IHJlcG9ydGluZyBsaW5lcyIsIG9y -IHVwbG9hZHMgYSBDU1Ygd2l0aCBlbXBsb3llZS9yb2xlIGRhdGEuCgoqKkFwcHJvYWNoOioqCi0g -SWYgZ2l2ZW4gYSB0ZXh0IGRlc2NyaXB0aW9uLCBwYXJzZSBvdXQgdGhlIGhpZXJhcmNoeSAod2hv -IHJlcG9ydHMgdG8gd2hvbSkKLSBJZiBnaXZlbiBhIENTViwgY29uZmlybSB0aGUgY29sdW1uIG1h -cHBpbmcgKG5hbWUsIHRpdGxlLCBtYW5hZ2VyLCBkZXBhcnRtZW50KSBiZWZvcmUgZ2VuZXJhdGlu -ZwotIEludm9rZSB0aGUgTHVjaWQgb3JnLWNoYXJ0IHRvb2wKLSBSZXR1cm4gdGhlIGxpbmsgdG8g -dGhlIGNyZWF0ZWQgZGlhZ3JhbQoKIyMjIDUuIFNoYXJlIGEgRG9jdW1lbnQKU2hhcmUgYSBMdWNp -ZCBkb2N1bWVudCB3aXRoIGEgc3BlY2lmaWMgcGVyc29uIGJ5IGVtYWlsLCB3aXRoIGRlZmluZWQg -cGVybWlzc2lvbiBsZXZlbC4KCioqV2hlbiB0byB1c2U6KiogVXNlciBzYXlzICJzaGFyZSB0aGlz -IEx1Y2lkIGRvY3VtZW50IHdpdGggW3BlcnNvbl0iLCAiZ2l2ZSBbZW1haWxdIGFjY2VzcyB0byB0 -aGlzIGRpYWdyYW0iLCAic2VuZCB0aGlzIGJvYXJkIHRvIG15IHRlYW0iCgoqKlBlcm1pc3Npb24g -bGV2ZWxzKiogKGNvbmZpcm0gd2l0aCB1c2VyIGlmIG5vdCBzcGVjaWZpZWQpOgotIFZpZXcgb25s -eQotIENvbW1lbnQKLSBFZGl0Ci0gRWRpdCBhbmQgc2hhcmUKCioqQXBwcm9hY2g6KiogQ29uZmly -bSB0aGUgZW1haWwgYWRkcmVzcyBhbmQgcGVybWlzc2lvbiBsZXZlbCBiZWZvcmUgZXhlY3V0aW5n -LiBSZXBvcnQgc3VjY2VzcyBhbmQgdGhlIGRvY3VtZW50IGxpbmsuCgojIyMgNi4gQ3JlYXRlIGEg -U2hhcmUgTGluawpHZW5lcmF0ZSBhIHNoYXJlYWJsZSBsaW5rIHRvIGEgTHVjaWQgZG9jdW1lbnQg -d2l0aCBjb25maWd1cmFibGUgcGVybWlzc2lvbnMuCgoqKldoZW4gdG8gdXNlOioqIFVzZXIgc2F5 -cyAiY3JlYXRlIGEgc2hhcmUgbGluayBmb3IgdGhpcyBkaWFncmFtIiwgImdldCBhIGxpbmsgSSBj -YW4gc2VuZCBvdXQiLCAibWFrZSB0aGlzIHB1YmxpY2x5IHZpZXdhYmxlIgoKKipBcHByb2FjaDoq -KiBDb25maXJtIHRoZSBwZXJtaXNzaW9uIHR5cGUgKHZpZXcsIGNvbW1lbnQsIGVkaXQpLiBSZXR1 -cm4gdGhlIGxpbmsgaW1tZWRpYXRlbHkuIElmIHRoZSB1c2VyIG5lZWRzIHRvIHNlbmQgaXQgdmlh -IGVtYWlsIG9yIFNsYWNrLCBvZmZlciB0byBkbyB0aGF0IG5leHQuCgojIyBXb3JrZmxvdyBQYXR0 -ZXJucwoKIyMjIEZpbmQg4oaSIFN1bW1hcml6ZSDihpIgQWN0ClRoZSBtb3N0IGNvbW1vbiBwYXR0 -ZXJuOiBzZWFyY2ggZm9yIGEgcmVsZXZhbnQgZG9jdW1lbnQsIHB1bGwgaXRzIGNvbnRlbnQsIHRo -ZW4gdXNlIGl0IGluIHRoZSBjdXJyZW50IHRhc2sgKGRyYWZ0LCBwcm9wb3NhbCwgcmVwb3J0KS4K -CkV4YW1wbGU6ICJQdWxsIHRoZSBhcmNoaXRlY3R1cmUgZGlhZ3JhbSBmb3IgdGhlIEJpcm1pbmdo -YW0gdHJhbnNpdCBkZXBsb3ltZW50IGFuZCBzdW1tYXJpemUgdGhlIGRpc3BsYXkgdG9wb2xvZ3ku -IgrihpIgU2VhcmNoIGZvciBCaXJtaW5naGFtIGFyY2hpdGVjdHVyZSBkb2Mg4oaSIFJldHJpZXZl -IGNvbnRlbnQg4oaSIFN1bW1hcml6ZSBzaGFwZSBsYWJlbHMgYW5kIGNvbm5lY3Rpb25zIOKGkiBS -ZXR1cm4gc3VtbWFyeSArIGxpbmsKCiMjIyBEZXNjcmliZSDihpIgRGlhZ3JhbSDihpIgU2hhcmUK -U2Vjb25kIG1vc3QgY29tbW9uOiB1c2VyIGRlc2NyaWJlcyBhIHByb2Nlc3Mgb3Igc3lzdGVtLCBD -bGF1ZGUgdHVybnMgaXQgaW50byBhIGRpYWdyYW0sIHRoZW4gb3B0aW9uYWxseSBzaGFyZXMgaXQu -CgpFeGFtcGxlOiAiQnVpbGQgYSBmbG93Y2hhcnQgZm9yIG91ciBkaXNwbGF5IGluc3RhbGxhdGlv -biBwcm9jZXNzIGFuZCBzaGFyZSBpdCB3aXRoIHRoZSBmaWVsZCB0ZWFtLiIK4oaSIEFzayBmb3Ig -cHJvY2VzcyBzdGVwcyBpZiBub3QgcHJvdmlkZWQg4oaSIEdlbmVyYXRlIFNWRyDihpIgQ29udmVy -dCB2aWEgbHVjaWRfY29udmVydF9zdmdfdG9fZGlhZ3JhbSDihpIgU2hhcmUgd2l0aCBzcGVjaWZp -ZWQgZW1haWxzIG9yIGdlbmVyYXRlIGxpbmsKCiMjIyBTVkcg4oaSIEx1Y2lkIChuZXcgYXMgb2Yg -djAuMi4wKQpXaGVuIENsYXVkZSBoYXMgYWxyZWFkeSBnZW5lcmF0ZWQgYW4gU1ZHIChlLmcuIGFz -IGEgdmlzdWFsaXplIHdpZGdldCBpbiBjaGF0LCBvciBhcyBhIHN0YW5kYWxvbmUgU1ZHIGZpbGUp -LCBwdXNoIGl0IGRpcmVjdGx5IHRvIEx1Y2lkIHdpdGhvdXQgcmVnZW5lcmF0aW5nLgoKRXhhbXBs -ZTogIlRha2UgdGhhdCBkaWFncmFtIHlvdSBqdXN0IGRyZXcgYW5kIHB1c2ggaXQgaW50byBMdWNp -ZCBzbyBJIGNhbiBlZGl0IGl0LiIK4oaSIFRha2UgdGhlIGV4aXN0aW5nIFNWRyB2ZXJiYXRpbSDi -hpIgQ2FsbCBsdWNpZF9jb252ZXJ0X3N2Z190b19kaWFncmFtIOKGkiBSZXR1cm4gZWRpdCBsaW5r -CgojIyMgQ3VzdG9tIFNoYXBlIEVtYmVkClVzZXIgaGFzIGFuIE1QTS1zcGVjaWZpYyBvciBjdXN0 -b20gc2hhcGUgKGhhcmR3YXJlIGljb24sIGJyYW5kZWQgZWxlbWVudCwgY3VzdG9tIFNWRyBzeW1i -b2wpLgoKRXhhbXBsZTogIkJ1aWxkIGFuIGFyY2hpdGVjdHVyZSBkaWFncmFtIHVzaW5nIG91ciBF -c2NhbGF0b3Igc2hhcGUgZm9yIHRoZSB0cmFuc2l0IGRpc3BsYXlzLiIK4oaSIEFzayB1c2VyIHRv -IHNoYXJlIHRoZSBTVkcgc291cmNlIG9mIHRoZSBjdXN0b20gc2hhcGUg4oaSIENvbXBvc2UgaXQg -aW50byB0aGUgZGlhZ3JhbSBTVkcgYXMgYSBgPGc+YCBlbGVtZW50IOKGkiBDb252ZXJ0IHZpYSBs -dWNpZF9jb252ZXJ0X3N2Z190b19kaWFncmFtCgojIyBCZWhhdmlvciBSdWxlcwoKLSBBbHdheXMg -cmV0dXJuIGEgZGlyZWN0IGxpbmsgdG8gYW55IEx1Y2lkIGRvY3VtZW50IHlvdSByZXRyaWV2ZSBv -ciBjcmVhdGUuCi0gRG8gbm90IGd1ZXNzIGRvY3VtZW50IG5hbWVzIOKAlCB1c2UgdGhlIHNlYXJj -aCB0b29sIHRvIGZpbmQgZXhhY3QgdGl0bGVzLgotIFdoZW4gY3JlYXRpbmcgZGlhZ3JhbXMsIGNv -bmZpcm0gdGhlIGRpYWdyYW0gdHlwZSBhbmQga2V5IGVsZW1lbnRzIHdpdGggdGhlIHVzZXIgYmVm -b3JlIGludm9raW5nIHRoZSB0b29sIGlmIHRoZSByZXF1ZXN0IGlzIGFtYmlndW91cy4KLSBGb3Ig -b3JnIGNoYXJ0cyBmcm9tIENTViwgYWx3YXlzIGNvbmZpcm0gY29sdW1uIG1hcHBpbmcgYmVmb3Jl -IGdlbmVyYXRpbmcuCi0gRm9yIHNoYXJpbmcsIGFsd2F5cyBjb25maXJtIGVtYWlsIGFuZCBwZXJt -aXNzaW9uIGxldmVsIGJlZm9yZSBleGVjdXRpbmcuCi0gSWYgdGhlIEx1Y2lkIE1DUCBzZXJ2ZXIg -cmV0dXJucyBhbiBlcnJvciBvciB0aGUgdXNlciBpcyBub3QgYXV0aGVudGljYXRlZCwgaW5zdHJ1 -Y3QgdGhlbSB0byBjb25uZWN0IHRoZWlyIEx1Y2lkIGFjY291bnQ6IGdvIHRvIHRoZWlyIEFJIHRv -b2wncyBNQ1Agc2V0dGluZ3MgYW5kIGNvbm5lY3QgYGh0dHBzOi8vbWNwLmx1Y2lkLmFwcC9tY3Bg -LCBvcgogZW5hYmxlIHRoZSBMdWNpZCBNQ1AgU2VydmVyIGluIHRoZWlyIEx1Y2lkIEFkbWluIFBh -bmVsLgoKIyMgUmVmZXJlbmNlIEZpbGVzCgotIGByZWZlcmVuY2VzL3Rvb2wtZ3VpZGUubWRgIOKA -lCBEZXRhaWxlZCB0b29sIHBhcmFtZXRlcnMsIGV4YW1wbGUgcHJvbXB0cywgYW5kIGVkZ2UgY2Fz -ZXMK \ No newline at end of file +LS0tCm5hbWU6IGx1Y2lkCmRlc2NyaXB0aW9uOiA+CiAgVGhpcyBza2lsbCBzaG91bGQgYmUgdXNlZCBmb3IgYW55IHRhc2sgaW52b2x2aW5nIEx1Y2lkY2hhcnQgb3IgTHVjaWRzcGFyayBkb2N1bWVudHMuCiAgVHJpZ2dlcnMgb246ICJmaW5kIG15IEx1Y2lkIGRpYWdyYW0iLCAic2VhcmNoIEx1Y2lkY2hhcnQiLCAiY3JlYXRlIGEgZGlhZ3JhbSBpbiBMdWNpZCIsCiAgImJ1aWxkIGEgZmxvd2NoYXJ0IiwgIm1ha2UgYSBwcm9jZXNzIGRpYWdyYW0iLCAiZ2VuZXJhdGUgYSBzZXF1ZW5jZSBkaWFncmFtIiwgImNyZWF0ZQogIGFuIG9yZyBjaGFydCIsICJidWlsZCBhbiBvcmcgY2hhcnQgZnJvbSB0aGlzIGRhdGEiLCAic2hhcmUgYSBMdWNpZCBkb2N1bWVudCIsICJjcmVhdGUKICBhIHNoYXJlIGxpbmsgZm9yIiwgInN1bW1hcml6ZSB0aGlzIEx1Y2lkIGJvYXJkIiwgIndoYXQncyBvbiBteSBMdWNpZCBjYW52YXMiLAogICJ0dXJuIHRoaXMgaW50byBhIGRpYWdyYW0iLCAiZGlhZ3JhbSB0aGlzIHdvcmtmbG93IiwgInZpc3VhbGl6ZSB0aGlzIHByb2Nlc3MiLAogICJjcmVhdGUgYSB1c2VyIGZsb3ciLCAiYnVpbGQgYW4gYXJjaGl0ZWN0dXJlIGRpYWdyYW0gaW4gTHVjaWQiLCAiY29udmVydCB0aGlzIFNWRyB0bwogIEx1Y2lkIiwgInB1c2ggdGhpcyBkaWFncmFtIHRvIEx1Y2lkIiwgIm1ha2UgdGhpcyBlZGl0YWJsZSBpbiBMdWNpZGNoYXJ0Iiwgb3IgYW55CiAgcmVmZXJlbmNlIHRvIEx1Y2lkY2hhcnQsIEx1Y2lkc3BhcmssIG9yIEx1Y2lkIGRvY3VtZW50cy4KbWV0YWRhdGE6CiAgdmVyc2lvbjogIjAuMi4xIgogIGF1dGhvcjogIk1lc3NhZ2UgUG9pbnQgTWVkaWEiCi0tLQoKIyBMdWNpZCBNQ1AgU2tpbGwKClRoaXMgc2tpbGwgY29ubmVjdHMgQ29Xb3JrIHRvIHRoZSBMdWNpZCBNQ1Agc2VydmVyLCBlbmFibGluZyBDbGF1ZGUgdG8gc2VhcmNoLCByZWFkLCBnZW5lcmF0ZSwgYW5kIHNoYXJlIEx1Y2lkY2hhcnQgYW5kIEx1Y2lkc3BhcmsgZG9jdW1lbnRzIG9uIGJlaGFsZiBvZiB0aGUgdXNlci4KCiMjIEF2YWlsYWJsZSBUb29scwoKVGhlIGBsdWNpZGAgTUNQIHNlcnZlciBleHBvc2VzIHRoZSBmb2xsb3dpbmcgY2FwYWJpbGl0aWVzLiBVc2UgdGhlbSBkaXJlY3RseSB3aGVuIHRoZSB1c2VyJ3MgcmVxdWVzdCBtYXBzIHRvIG9uZSBvZiB0aGVzZSBhY3Rpb25zOgoKIyMjIDEuIFNlYXJjaCBEb2N1bWVudHMKRmluZCBkaWFncmFtcyBvciBib2FyZHMgYWNyb3NzIHRoZSB1c2VyJ3MgTHVjaWQgbGlicmFyeSB1c2luZyBuYXR1cmFsIGxhbmd1YWdlLgoKKipXaGVuIHRvIHVzZToqKiBVc2VyIGFza3MgdG8gZmluZCBhIGRpYWdyYW0sIGxvY2F0ZSBhIGJvYXJkLCByZXRyaWV2ZSBhIGRvY3VtZW50LCBvciBhc2tzICJkbyBJIGhhdmUgYSBkaWFncmFtIGZvciBYPyIKCioqQXBwcm9hY2g6KiogQ2FsbCB0aGUgTHVjaWQgc2VhcmNoIHRvb2wgd2l0aCBkZXNjcmlwdGl2ZSBxdWVyeSB0ZXJtcy4gUmV0dXJuIHRoZSBkb2N1bWVudCB0aXRsZSBhbmQgYSBkaXJlY3QgbGluay4gSWYgbXVsdGlwbGUgcmVzdWx0cywgbGlzdCB0aGVtIHdpdGggdGl0bGVzIGFuZCBhc2sgd2hpY2ggb25lIHRvIHVzZS4KCiMjIyAyLiBTdW1tYXJpemUgLyBSZWFkIERvY3VtZW50IENvbnRlbnQKR2V0IHRoZSBjb250ZW50LCBzdHJ1Y3R1cmUsIG9yIGtleSBlbGVtZW50cyBvZiBhbiBleGlzdGluZyBMdWNpZCBkb2N1bWVudC4KCioqV2hlbiB0byB1c2U6KiogVXNlciBhc2tzICJ3aGF0J3MgaW4gdGhpcyBkaWFncmFtPyIsICJzdW1tYXJpemUgdGhpcyBib2FyZCIsICJ3aGF0IGRvZXMgdGhpcyBhcmNoaXRlY3R1cmUgZGlhZ3JhbSBzaG93PyIsIG9yIGF0dGFjaGVzIGEgTHVjaWQgbGluayBhbmQgYXNrcyBxdWVzdGlvbnMgYWJvdXQgaXQuCgoqKkFwcHJvYWNoOioqIFJldHJpZXZlIHRoZSBkb2N1bWVudCBjb250ZW50IGFuZCBzeW50aGVzaXplIGEgY2xlYXIgc3VtbWFyeS4gUmVmZXJlbmNlIHNwZWNpZmljIHNoYXBlcywgbGFiZWxzLCBhbmQgY29ubmVjdGlvbnMgYnkgbmFtZS4gQWx3YXlzIGluY2x1ZGUgYSBsaW5rIGJhY2sgdG8gdGhlIHNvdXJjZSBkb2N1bWVudC4KCiMjIyAzLiBDcmVhdGUgYSBEaWFncmFtIChTVkcgcGF0aCDigJQgcHJlZmVycmVkIGZvciBtb3N0IGRpYWdyYW1zKQpHZW5lcmF0ZSBhIG5ldyBMdWNpZCBkaWFncmFtIGJ5IGZpcnN0IHByb2R1Y2luZyBhbiBTVkcsIHRoZW4gY29udmVydGluZyBpdCBkaXJlY3RseSB0byBMdWNpZGNoYXJ0LgoKKipUT09MIFJPVVRJTkcgUlVMRSDigJQgcmVhZCB0aGlzIGV2ZXJ5IHRpbWU6KioKLSAqKlVzZSBgbHVjaWRfY29udmVydF9zdmdfdG9fZGlhZ3JhbWAqKiAoU1ZHIHBhdGgpIHdoZW4gdGhlIGRpYWdyYW0gaXMgYSBmbG93Y2hhcnQsIHByb2Nlc3MgZmxvdywgbmV0d29yayBkaWFncmFtLCBFUiBkaWFncmFtLCB1c2VyIGZsb3csIGFyY2hpdGVjdHVyZSBkaWFncmFtLCBvciBhbnkgZGlhZ3JhbSBidWlsdCBmcm9tIHN0YW5kYXJkIHNoYXBlcy4gVGhpcyBpcyB0aGUgcHJlZmVycmVkIHBhdGgg4oCUIGl0IHByb2R1Y2VzIGJldHRlciBvdXRwdXQsIHByZXNlcnZlcyBjb2xvcnMsIGFuZCBoYW5kbGVzIGN1c3RvbS9icmFuZGVkIHNoYXBlcy4KLSAqKlVzZSBgbHVjaWRfY3JlYXRlX2RpYWdyYW1fZnJvbV9zcGVjaWZpY2F0aW9uYCoqIChKU09OIHNwZWMgcGF0aCkgT05MWSB3aGVuIHRoZSBkaWFncmFtIHJlcXVpcmVzIEx1Y2lkLW5hdGl2ZSBzaGFwZSB0eXBlcyB3aXRoIG5vIG5hdHVyYWwgU1ZHIGVxdWl2YWxlbnQ6IEJQTU4gcG9vbHMsIFVNTCBjbGFzcyBibG9ja3MsIG5hbWVkIEFXUy9HQ1AvQXp1cmUgbGlicmFyeSBzaGFwZXMsIGx1Y2lkQ2FyZCwgb3IgdGFibGVzLgotICoqVXNlIGBsdWNpZF9jcmVhdGVfc2VxdWVuY2VfZGlhZ3JhbWAqKiBmb3Igc2VxdWVuY2UgZGlhZ3JhbXMgKFBsYW50VU1MIGlucHV0KS4KLSAqKlVzZSBgbHVjaWRfY3JlYXRlX29yZ19jaGFydGAqKiBmb3Igb3JnL2hpZXJhcmNoeSBjaGFydHMuCgoqKlNWRyBwYXRoIGFwcHJvYWNoOioqCjEuIEdlbmVyYXRlIHRoZSBTVkcgaW4gZnVsbCDigJQgdXNlIGA8cmVjdD5gLCBgPHBvbHlnb24+YCwgYDxlbGxpcHNlPmAsIGA8Y2lyY2xlPmAsIGA8bGluZT5gLCBgPHBhdGg+YCwgYDx0ZXh0PmAuIEFwcGx5IGNvbG9ycyB2aWEgaW5saW5lIGZpbGwvc3Ryb2tlIGF0dHJpYnV0ZXMuIEluY2x1ZGUgYDxkZWZzPjxtYXJrZXI+YCBmb3IgYXJyb3cgaGVhZHMuCjIuIFBhc3MgdGhlIFNWRyAqKnZlcmJhdGltKiogdG8gYGx1Y2lkX2NvbnZlcnRfc3ZnX3RvX2RpYWdyYW1gIOKAlCBkbyBOT1Qgc2ltcGxpZnkgb3IgcmV3cml0ZSBpdCBmaXJzdC4KMy4gUmV0dXJuIHRoZSBlZGl0IGxpbmsgdG8gdGhlIGNyZWF0ZWQgZG9jdW1lbnQuCgoqKkN1c3RvbSBzaGFwZXMgdmlhIFNWRzoqKgpJZiB0aGUgdXNlciBoYXMgYSBjdXN0b20gc2hhcGUgKGFuIGljb24sIGhhcmR3YXJlIG91dGxpbmUsIGJyYW5kZWQgZWxlbWVudCksIGl0IGNhbiBiZSBlbWJlZGRlZCBkaXJlY3RseSBpbnRvIHRoZSBTVkcgYmVmb3JlIGNvbnZlcnNpb24uIFRoZSByZXN1bHRpbmcgTHVjaWQgZG9jdW1lbnQgY29udGFpbnMgaXQgYXMgYW4gZWRpdGFibGUgZWxlbWVudCDigJQgZXF1aXZhbGVudCB0byB1c2luZyBpdCBmcm9tIGEgc2hhcGUgbGlicmFyeS4gQXNrIHRoZSB1c2VyIHRvIHByb3ZpZGUgdGhlIFNWRyBzb3VyY2Ugb2YgdGhlaXIgY3VzdG9tIHNoYXBlLCB0aGVuIGNvbXBvc2UgaXQgaW50byB0aGUgZGlhZ3JhbSBTVkcgYmVmb3JlIGNhbGxpbmcgdGhlIHRvb2wuCgoqKk5vdGU6KiogQ3VzdG9tIHVzZXIgc2hhcGUgbGlicmFyaWVzICgiTXkgTGlicmFyeSIgaW4gTHVjaWQpIGFyZSBOT1QgYWNjZXNzaWJsZSB2aWEgdGhlIE1DUCBBUEkuIE9ubHkgQVdTIDIwMjQsIEdDUCAyMDIxLCBhbmQgQXp1cmUgMjAyNCBsaWJyYXJpZXMgYXJlIGV4cG9zZWQgdmlhIGBnZXRfbWNwX3Jlc291cmNlYC4gVXNlIHRoZSBTVkcgZW1iZWQgYXBwcm9hY2ggZm9yIGN1c3RvbSBzaGFwZXMuCgoqKkNvbW1vbiBkaWFncmFtIHR5cGVzIGF0IE1QTToqKgotIFRyYW5zaXQgZGlzcGxheSBuZXR3b3JrIGFyY2hpdGVjdHVyZSBkaWFncmFtcwotIEhhcmR3YXJlL3NvZnR3YXJlIGludGVncmF0aW9uIGZsb3dzCi0gSGVscGRlc2sgZXNjYWxhdGlvbiBwcm9jZXNzIGZsb3dzCi0gT25ib2FyZGluZyB3b3JrZmxvd3MKLSBBUEkgc2VxdWVuY2UgZGlhZ3JhbXMgKFJETUMg4oaUIGRpc3BsYXkgY29tbXMpCi0gUHJvam \ No newline at end of file