{"name":"README.md","path":"README.md","sha":"2c2559282624fbc7732b3ca7687f624e434c0065","size":30361,"url":"https://api.github.com/repos/charmbracelet/crush/contents/README.md?ref=main","html_url":"https://github.com/charmbracelet/crush/blob/main/README.md","git_url":"https://api.github.com/repos/charmbracelet/crush/git/blobs/2c2559282624fbc7732b3ca7687f624e434c0065","download_url":"https://raw.githubusercontent.com/charmbracelet/crush/main/README.md","type":"file","content":"IyBDcnVzaAoKPHAgYWxpZ249ImNlbnRlciI+CiAgICA8YSBocmVmPSJodHRw\nczovL3N0dWZmLmNoYXJtLnNoL2NydXNoL2NoYXJtLWNydXNoLnBuZyI+PGlt\nZyB3aWR0aD0iNDUwIiBhbHQ9IkNoYXJtIENydXNoIExvZ28iIHNyYz0iaHR0\ncHM6Ly9naXRodWIuY29tL3VzZXItYXR0YWNobWVudHMvYXNzZXRzL2NmOGNh\nM2NlLThiMDItNDNmMC05ZDBmLTVhMzMxNDg4ZGE0YiIgLz48L2E+PGJyIC8+\nCiAgICA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vY2hhcm1icmFjZWxl\ndC9jcnVzaC9yZWxlYXNlcyI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLnNoaWVs\nZHMuaW8vZ2l0aHViL3JlbGVhc2UvY2hhcm1icmFjZWxldC9jcnVzaCIgYWx0\nPSJMYXRlc3QgUmVsZWFzZSI+PC9hPgogICAgPGEgaHJlZj0iaHR0cHM6Ly9n\naXRodWIuY29tL2NoYXJtYnJhY2VsZXQvY3J1c2gvYWN0aW9ucyI+PGltZyBz\ncmM9Imh0dHBzOi8vZ2l0aHViLmNvbS9jaGFybWJyYWNlbGV0L2NydXNoL2Fj\ndGlvbnMvd29ya2Zsb3dzL2J1aWxkLnltbC9iYWRnZS5zdmciIGFsdD0iQnVp\nbGQgU3RhdHVzIj48L2E+CjwvcD4KCjxwIGFsaWduPSJjZW50ZXIiPllvdXIg\nbmV3IGNvZGluZyBiZXN0aWUsIG5vdyBhdmFpbGFibGUgaW4geW91ciBmYXZv\ndXJpdGUgdGVybWluYWwuPGJyIC8+WW91ciB0b29scywgeW91ciBjb2RlLCBh\nbmQgeW91ciB3b3JrZmxvd3MsIHdpcmVkIGludG8geW91ciBMTE0gb2YgY2hv\naWNlLjwvcD4KPHAgYWxpZ249ImNlbnRlciI+57uI56uv6YeM55qE57yW56iL\n5paw5pCt5qGj77yMPGJyIC8+5peg57yd5o6l5YWl5L2g55qE5bel5YW344CB\n5Luj56CB5LiO5bel5L2c5rWB77yM5YWo6Z2i5YW85a655Li75rWBIExMTSDm\nqKHlnovjgII8L3A+Cgo8cCBhbGlnbj0iY2VudGVyIj48aW1nIHdpZHRoPSI4\nMDAiIGFsdD0iQ3J1c2ggRGVtbyIgc3JjPSJodHRwczovL2dpdGh1Yi5jb20v\ndXNlci1hdHRhY2htZW50cy9hc3NldHMvNTgyODBjYWYtODUxYi00NzBhLWI2\nZjctZDVjNGVhOGExOTY4IiAvPjwvcD4KCiMjIEZlYXR1cmVzCgotICoqTXVs\ndGktTW9kZWw6KiogY2hvb3NlIGZyb20gYSB3aWRlIHJhbmdlIG9mIExMTXMg\nb3IgYWRkIHlvdXIgb3duIHZpYSBPcGVuQUktIG9yIEFudGhyb3BpYy1jb21w\nYXRpYmxlIEFQSXMKLSAqKkZsZXhpYmxlOioqIHN3aXRjaCBMTE1zIG1pZC1z\nZXNzaW9uIHdoaWxlIHByZXNlcnZpbmcgY29udGV4dAotICoqU2Vzc2lvbi1C\nYXNlZDoqKiBtYWludGFpbiBtdWx0aXBsZSB3b3JrIHNlc3Npb25zIGFuZCBj\nb250ZXh0cyBwZXIgcHJvamVjdAotICoqTFNQLUVuaGFuY2VkOioqIENydXNo\nIHVzZXMgTFNQcyBmb3IgYWRkaXRpb25hbCBjb250ZXh0LCBqdXN0IGxpa2Ug\neW91IGRvCi0gKipFeHRlbnNpYmxlOioqIGFkZCBjYXBhYmlsaXRpZXMgdmlh\nIE1DUHMgKGBodHRwYCwgYHN0ZGlvYCwgYW5kIGBzc2VgKQotICoqV29ya3Mg\nRXZlcnl3aGVyZToqKiBmaXJzdC1jbGFzcyBzdXBwb3J0IGluIGV2ZXJ5IHRl\ncm1pbmFsIG9uIG1hY09TLCBMaW51eCwgV2luZG93cyAoUG93ZXJTaGVsbCBh\nbmQgV1NMKSwgQW5kcm9pZCwgRnJlZUJTRCwgT3BlbkJTRCwgYW5kIE5ldEJT\nRAotICoqSW5kdXN0cmlhbCBHcmFkZToqKiBidWlsdCBvbiB0aGUgQ2hhcm0g\nZWNvc3lzdGVtLCBwb3dlcmluZyAyNWsrIGFwcGxpY2F0aW9ucywgZnJvbSBs\nZWFkaW5nIG9wZW4gc291cmNlIHByb2plY3RzIHRvIGJ1c2luZXNzLWNyaXRp\nY2FsIGluZnJhc3RydWN0dXJlCgojIyBJbnN0YWxsYXRpb24KClVzZSBhIHBh\nY2thZ2UgbWFuYWdlcjoKCmBgYGJhc2gKIyBIb21lYnJldwpicmV3IGluc3Rh\nbGwgY2hhcm1icmFjZWxldC90YXAvY3J1c2gKCiMgTlBNCm5wbSBpbnN0YWxs\nIC1nIEBjaGFybWxhbmQvY3J1c2gKCiMgQXJjaCBMaW51eCAoYnR3KQp5YXkg\nLVMgY3J1c2gtYmluCgojIE5peApuaXggcnVuIGdpdGh1YjpudW10aWRlL25p\neC1haS10b29scyNjcnVzaAoKIyBGcmVlQlNECnBrZyBpbnN0YWxsIGNydXNo\nCmBgYAoKV2luZG93cyB1c2VyczoKCmBgYGJhc2gKIyBXaW5nZXQKd2luZ2V0\nIGluc3RhbGwgY2hhcm1icmFjZWxldC5jcnVzaAoKIyBTY29vcApzY29vcCBi\ndWNrZXQgYWRkIGNoYXJtIGh0dHBzOi8vZ2l0aHViLmNvbS9jaGFybWJyYWNl\nbGV0L3Njb29wLWJ1Y2tldC5naXQKc2Nvb3AgaW5zdGFsbCBjcnVzaApgYGAK\nCjxkZXRhaWxzPgo8c3VtbWFyeT48c3Ryb25nPk5peCAoTlVSKTwvc3Ryb25n\nPjwvc3VtbWFyeT4KCkNydXNoIGlzIGF2YWlsYWJsZSB2aWEgdGhlIG9mZmlj\naWFsIENoYXJtIFtOVVJdKGh0dHBzOi8vZ2l0aHViLmNvbS9uaXgtY29tbXVu\naXR5L05VUikgaW4gYG51ci5yZXBvcy5jaGFybWJyYWNlbGV0LmNydXNoYCwg\nd2hpY2ggaXMgdGhlIG1vc3QgdXAtdG8tZGF0ZSB3YXkgdG8gZ2V0IENydXNo\nIGluIE5peC4KCllvdSBjYW4gYWxzbyB0cnkgb3V0IENydXNoIHZpYSB0aGUg\nTlVSIHdpdGggYG5peC1zaGVsbGA6CgpgYGBiYXNoCiMgQWRkIHRoZSBOVVIg\nY2hhbm5lbC4Kbml4LWNoYW5uZWwgLS1hZGQgaHR0cHM6Ly9naXRodWIuY29t\nL25peC1jb21tdW5pdHkvTlVSL2FyY2hpdmUvbWFpbi50YXIuZ3ogbnVyCm5p\neC1jaGFubmVsIC0tdXBkYXRlCgojIEdldCBDcnVzaCBpbiBhIE5peCBzaGVs\nbC4Kbml4LXNoZWxsIC1wICcoaW1wb3J0IDxudXI+IHsgcGtncyA9IGltcG9y\ndCA8bml4cGtncz4ge307IH0pLnJlcG9zLmNoYXJtYnJhY2VsZXQuY3J1c2gn\nCmBgYAoKIyMjIE5peE9TICYgSG9tZSBNYW5hZ2VyIE1vZHVsZSBVc2FnZSB2\naWEgTlVSCgpDcnVzaCBwcm92aWRlcyBOaXhPUyBhbmQgSG9tZSBNYW5hZ2Vy\nIG1vZHVsZXMgdmlhIE5VUi4KWW91IGNhbiB1c2UgdGhlc2UgbW9kdWxlcyBk\naXJlY3RseSBpbiB5b3VyIGZsYWtlIGJ5IGltcG9ydGluZyB0aGVtIGZyb20g\nTlVSLiBTaW5jZSBpdCBhdXRvIGRldGVjdHMgd2hldGhlciBpdHMgYSBob21l\nIG1hbmFnZXIgb3Igbml4b3MgY29udGV4dCB5b3UgY2FuIHVzZSB0aGUgaW1w\nb3J0IHRoZSBleGFjdCBzYW1lIHdheSA6KQoKYGBgbml4CnsKICBpbnB1dHMg\nPSB7CiAgICBuaXhwa2dzLnVybCA9ICJnaXRodWI6Tml4T1Mvbml4cGtncy9u\naXhvcy11bnN0YWJsZSI7CiAgICBudXIudXJsID0gImdpdGh1YjpuaXgtY29t\nbXVuaXR5L05VUiI7CiAgfTsKCiAgb3V0cHV0cyA9IHsgc2VsZiwgbml4cGtn\ncywgbnVyLCAuLi4gfTogewogICAgbml4b3NDb25maWd1cmF0aW9ucy55b3Vy\nLWhvc3RuYW1lID0gbml4cGtncy5saWIubml4b3NTeXN0ZW0gewogICAgICBz\neXN0ZW0gPSAieDg2XzY0LWxpbnV4IjsKICAgICAgbW9kdWxlcyA9IFsKICAg\nICAgICBudXIubW9kdWxlcy5uaXhvcy5kZWZhdWx0CiAgICAgICAgbnVyLnJl\ncG9zLmNoYXJtYnJhY2VsZXQubW9kdWxlcy5jcnVzaAogICAgICAgIHsKICAg\nICAgICAgIHByb2dyYW1zLmNydXNoID0gewogICAgICAgICAgICBlbmFibGUg\nPSB0cnVlOwogICAgICAgICAgICBzZXR0aW5ncyA9IHsKICAgICAgICAgICAg\nICBwcm92aWRlcnMgPSB7CiAgICAgICAgICAgICAgICBvcGVuYWkgPSB7CiAg\nICAgICAgICAgICAgICAgIGlkID0gIm9wZW5haSI7CiAgICAgICAgICAgICAg\nICAgIG5hbWUgPSAiT3BlbkFJIjsKICAgICAgICAgICAgICAgICAgYmFzZV91\ncmwgPSAiaHR0cHM6Ly9hcGkub3BlbmFpLmNvbS92MSI7CiAgICAgICAgICAg\nICAgICAgIHR5cGUgPSAib3BlbmFpIjsKICAgICAgICAgICAgICAgICAgYXBp\nX2tleSA9ICJzay1mYWtlMTIzNDU2Nzg5YWJjZGVmLi4uIjsKICAgICAgICAg\nICAgICAgICAgbW9kZWxzID0gWwogICAgICAgICAgICAgICAgICAgIHsKICAg\nICAgICAgICAgICAgICAgICAgIGlkID0gImdwdC00IjsKICAgICAgICAgICAg\nICAgICAgICAgIG5hbWUgPSAiR1BULTQiOwogICAgICAgICAgICAgICAgICAg\nIH0KICAgICAgICAgICAgICAgICAgXTsKICAgICAgICAgICAgICAgIH07CiAg\nICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBsc3AgPSB7CiAgICAgICAg\nICAgICAgICBnbyA9IHsgY29tbWFuZCA9ICJnb3BscyI7IGVuYWJsZWQgPSB0\ncnVlOyB9OwogICAgICAgICAgICAgICAgbml4ID0geyBjb21tYW5kID0gIm5p\nbCI7IGVuYWJsZWQgPSB0cnVlOyB9OwogICAgICAgICAgICAgIH07CiAgICAg\nICAgICAgICAgb3B0aW9ucyA9IHsKICAgICAgICAgICAgICAgIGNvbnRleHRf\ncGF0aHMgPSBbICIvZXRjL25peG9zL2NvbmZpZ3VyYXRpb24ubml4IiBdOwog\nICAgICAgICAgICAgICAgdHVpID0geyBjb21wYWN0X21vZGUgPSB0cnVlOyB9\nOwogICAgICAgICAgICAgICAgZGVidWcgPSBmYWxzZTsKICAgICAgICAgICAg\nICB9OwogICAgICAgICAgICB9OwogICAgICAgICAgfTsKICAgICAgICB9CiAg\nICAgIF07CiAgICB9OwogIH07Cn0KYGBgCgo8L2RldGFpbHM+Cgo8ZGV0YWls\ncz4KPHN1bW1hcnk+PHN0cm9uZz5EZWJpYW4vVWJ1bnR1PC9zdHJvbmc+PC9z\ndW1tYXJ5PgoKYGBgYmFzaApzdWRvIG1rZGlyIC1wIC9ldGMvYXB0L2tleXJp\nbmdzCmN1cmwgLWZzU0wgaHR0cHM6Ly9yZXBvLmNoYXJtLnNoL2FwdC9ncGcu\na2V5IHwgc3VkbyBncGcgLS1kZWFybW9yIC1vIC9ldGMvYXB0L2tleXJpbmdz\nL2NoYXJtLmdwZwplY2hvICJkZWIgW3NpZ25lZC1ieT0vZXRjL2FwdC9rZXly\naW5ncy9jaGFybS5ncGddIGh0dHBzOi8vcmVwby5jaGFybS5zaC9hcHQvICog\nKiIgfCBzdWRvIHRlZSAvZXRjL2FwdC9zb3VyY2VzLmxpc3QuZC9jaGFybS5s\naXN0CnN1ZG8gYXB0IHVwZGF0ZSAmJiBzdWRvIGFwdCBpbnN0YWxsIGNydXNo\nCmBgYAoKPC9kZXRhaWxzPgoKPGRldGFpbHM+CjxzdW1tYXJ5PjxzdHJvbmc+\nRmVkb3JhL1JIRUw8L3N0cm9uZz48L3N1bW1hcnk+CgpgYGBiYXNoCmVjaG8g\nJ1tjaGFybV0KbmFtZT1DaGFybQpiYXNldXJsPWh0dHBzOi8vcmVwby5jaGFy\nbS5zaC95dW0vCmVuYWJsZWQ9MQpncGdjaGVjaz0xCmdwZ2tleT1odHRwczov\nL3JlcG8uY2hhcm0uc2gveXVtL2dwZy5rZXknIHwgc3VkbyB0ZWUgL2V0Yy95\ndW0ucmVwb3MuZC9jaGFybS5yZXBvCnN1ZG8geXVtIGluc3RhbGwgY3J1c2gK\nYGBgCgo8L2RldGFpbHM+CgpPciwgZG93bmxvYWQgaXQ6CgotIFtQYWNrYWdl\nc11bcmVsZWFzZXNdIGFyZSBhdmFpbGFibGUgaW4gRGViaWFuIGFuZCBSUE0g\nZm9ybWF0cwotIFtCaW5hcmllc11bcmVsZWFzZXNdIGFyZSBhdmFpbGFibGUg\nZm9yIExpbnV4LCBtYWNPUywgV2luZG93cywgRnJlZUJTRCwgT3BlbkJTRCwg\nYW5kIE5ldEJTRAoKW3JlbGVhc2VzXTogaHR0cHM6Ly9naXRodWIuY29tL2No\nYXJtYnJhY2VsZXQvY3J1c2gvcmVsZWFzZXMKCk9yIGp1c3QgaW5zdGFsbCBp\ndCB3aXRoIEdvOgoKYGBgCmdvIGluc3RhbGwgZ2l0aHViLmNvbS9jaGFybWJy\nYWNlbGV0L2NydXNoQGxhdGVzdApgYGAKCj4gWyFXQVJOSU5HXQo+IFByb2R1\nY3Rpdml0eSBtYXkgaW5jcmVhc2Ugd2hlbiB1c2luZyBDcnVzaCBhbmQgeW91\nIG1heSBmaW5kIHlvdXJzZWxmIG5lcmQKPiBzbmlwZWQgd2hlbiBmaXJzdCB1\nc2luZyB0aGUgYXBwbGljYXRpb24uIElmIHRoZSBzeW1wdG9tcyBwZXJzaXN0\nLCBqb2luIHRoZQo+IFtTbGFja11bc2xhY2tdIG9yIFtEaXNjb3JkXVtkaXNj\nb3JkXSBhbmQgbmVyZCBzbmlwZSB0aGUgcmVzdCBvZiB1cy4KCiMjIEdldHRp\nbmcgU3RhcnRlZAoKVGhlIHF1aWNrZXN0IHdheSB0byBnZXQgc3RhcnRlZCBp\ncyB0byBncmFiIGFuIEFQSSBrZXkgZm9yIHlvdXIgcHJlZmVycmVkCnByb3Zp\nZGVyIHN1Y2ggYXMgQW50aHJvcGljLCBPcGVuQUksIEdyb3EsIE9wZW5Sb3V0\nZXIsIG9yIFZlcmNlbCBBSSBHYXRld2F5IGFuZCBqdXN0IHN0YXJ0CkNydXNo\nLiBZb3UnbGwgYmUgcHJvbXB0ZWQgdG8gZW50ZXIgeW91ciBBUEkga2V5LgoK\nVGhhdCBzYWlkLCB5b3UgY2FuIGFsc28gc2V0IGVudmlyb25tZW50IHZhcmlh\nYmxlcyBmb3IgcHJlZmVycmVkIHByb3ZpZGVycy4KCnwgRW52aXJvbm1lbnQg\nVmFyaWFibGUgICAgICAgIHwgUHJvdmlkZXIgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgfAp8IC0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t\nLS0tLS0tLS0tLS0tLS0tLS0tIHwKfCBgSFlQRVJfQVBJX0tFWWAgICAgICAg\nICAgICAgfCBDaGFybSBIeXBlciAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICB8CnwgYEFOVEhST1BJQ19BUElfS0VZYCAgICAgICAg\nIHwgQW50aHJvcGljICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgfAp8IGBPUEVOQUlfQVBJX0tFWWAgICAgICAgICAgICB8IE9w\nZW5BSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgIHwKfCBgVkVSQ0VMX0FQSV9LRVlgICAgICAgICAgICAgfCBWZXJjZWwg\nQUkgR2F0ZXdheSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8\nCnwgYEdFTUlOSV9BUElfS0VZYCAgICAgICAgICAgIHwgR29vZ2xlIEdlbWlu\naSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IGBT\nWU5USEVUSUNfQVBJX0tFWWAgICAgICAgICB8IFN5bnRoZXRpYyAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCBgWkFJX0FQ\nSV9LRVlgICAgICAgICAgICAgICAgfCBaLmFpICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CnwgYE1JTklNQVhfQVBJ\nX0tFWWAgICAgICAgICAgIHwgTWluaU1heCAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgfAp8IGBIRl9UT0tFTmAgICAgICAg\nICAgICAgICAgICB8IEh1Z2dpbmcgRmFjZSBJbmZlcmVuY2UgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgIHwKfCBgQ0VSRUJSQVNfQVBJX0tFWWAgICAg\nICAgICAgfCBDZXJlYnJhcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgICAgICB8CnwgYE9QRU5ST1VURVJfQVBJX0tFWWAgICAgICAg\nIHwgT3BlblJvdXRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgfAp8IGBJT05FVF9BUElfS0VZYCAgICAgICAgICAgICB8IGlv\nLm5ldCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\nICAgIHwKfCBgQUxJQkFCQV9TSU5HQVBPUkVfQVBJX0tFWWAgfCBBbGliYWJh\nIChTaW5nYXBvcmUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8\nCnwgYEdST1FfQVBJX0tFWWAgICAgICAgICAgICAgIHwgR3JvcSAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IGBB\nVklBTl9BUElfS0VZYCAgICAgICAgICAgICB8IEF2aWFuICAgICAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCBgT1BFTkNP\nREVfQVBJX0tFWWAgICAgICAgICAgfCBPcGVuQ29kZSBaZW4gJiBHbyAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CnwgYFZFUlRFWEFJX1BS\nT0pFQ1RgICAgICAgICAgIHwgR29vZ2xlIENsb3VkIFZlcnRleEFJIChHZW1p\nbmkpICAgICAgICAgICAgICAgICAgICAgfAp8IGBWRVJURVhBSV9MT0NBVElP\nTmAgICAgICAgICB8IEdvb2dsZSBDbG91ZCBWZXJ0ZXhBSSAoR2VtaW5pKSAg\nICAgICAgICAgICAgICAgICAgIHwKfCBgQVdTX0FDQ0VTU19LRVlfSURgICAg\nICAgICAgfCBBbWF6b24gQmVkcm9jayAoQ2xhdWRlKSAgICAgICAgICAgICAg\nICAgICAgICAgICAgICB8CnwgYEFXU19TRUNSRVRfQUNDRVNTX0tFWWAgICAg\nIHwgQW1hem9uIEJlZHJvY2sgKENsYXVkZSkgICAgICAgICAgICAgICAgICAg\nICAgICAgICAgfAp8IGBBV1NfUkVHSU9OYCAgICAgICAgICAgICAgICB8IEFt\nYXpvbiBCZWRyb2NrIChDbGF1ZGUpICAgICAgICAgICAgICAgICAgICAgICAg\nICAgIHwKfCBgQVdTX1BST0ZJTEVgICAgICAgICAgICAgICAgfCBBbWF6b24g\nQmVkcm9jayAoQ3VzdG9tIFByb2ZpbGUpICAgICAgICAgICAgICAgICAgICB8\nCnwgYEFXU19CRUFSRVJfVE9LRU5fQkVEUk9DS2AgIHwgQW1hem9uIEJlZHJv\nY2sgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAp8IGBB\nWlVSRV9PUEVOQUlfQVBJX0VORFBPSU5UYCB8IEF6dXJlIE9wZW5BSSBtb2Rl\nbHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCBgQVpVUkVf\nT1BFTkFJX0FQSV9LRVlgICAgICAgfCBBenVyZSBPcGVuQUkgbW9kZWxzIChv\ncHRpb25hbCB3aGVuIHVzaW5nIEVudHJhIElEKSB8CnwgYEFaVVJFX09QRU5B\nSV9BUElfVkVSU0lPTmAgIHwgQXp1cmUgT3BlbkFJIG1vZGVscyAgICAgICAg\nICAgICAgICAgICAgICAgICAgICAgICAgfAoKIyMjIFN1YnNjcmlwdGlvbnMK\nCklmIHlvdSBwcmVmZXIgc3Vic2NyaXB0aW9uLWJhc2VkIHVzYWdlLCBoZXJl\nIGFyZSBzb21lIHBsYW5zIHRoYXQgd29yayB3ZWxsIGluCkNydXNoOgoKLSBb\nU3ludGhldGljXShodHRwczovL3N5bnRoZXRpYy5uZXcvcHJpY2luZykKLSBb\nR0xNIENvZGluZyBQbGFuXShodHRwczovL3ouYWkvc3Vic2NyaWJlKQotIFtL\naW1pIENvZGVdKGh0dHBzOi8vd3d3LmtpbWkuY29tL21lbWJlcnNoaXAvcHJp\nY2luZykKLSBbTWluaU1heCBDb2RpbmcgUGxhbl0oaHR0cHM6Ly9wbGF0Zm9y\nbS5taW5pbWF4LmlvL3N1YnNjcmliZS9jb2RpbmctcGxhbikKCiMjIyBCeSB0\naGUgV2F5CgpJcyB0aGVyZSBhIHByb3ZpZGVyIHlvdeKAmWQgbGlrZSB0byBz\nZWUgaW4gQ3J1c2g/IElzIHRoZXJlIGFuIGV4aXN0aW5nIG1vZGVsIHRoYXQg\nbmVlZHMgYW4gdXBkYXRlPwoKQ3J1c2jigJlzIGRlZmF1bHQgbW9kZWwgbGlz\ndGluZyBpcyBtYW5hZ2VkIGluIFtDYXR3YWxrXShodHRwczovL2dpdGh1Yi5j\nb20vY2hhcm1icmFjZWxldC9jYXR3YWxrKSwgYSBjb21tdW5pdHktc3VwcG9y\ndGVkLCBvcGVuIHNvdXJjZSByZXBvc2l0b3J5IG9mIENydXNoLWNvbXBhdGli\nbGUgbW9kZWxzLCBhbmQgeW914oCZcmUgd2VsY29tZSB0byBjb250cmlidXRl\nLgoKPGEgaHJlZj0iaHR0cHM6Ly9naXRodWIuY29tL2NoYXJtYnJhY2VsZXQv\nY2F0d2FsayI+PGltZyB3aWR0aD0iMTc0IiBoZWlnaHQ9IjE3NCIgYWx0PSJD\nYXR3YWxrIEJhZGdlIiBzcmM9Imh0dHBzOi8vZ2l0aHViLmNvbS91c2VyLWF0\ndGFjaG1lbnRzL2Fzc2V0cy85NWI0OTUxNS1mZTgyLTQ0MDktYjEwZC01YmVi\nMDg3Mzc4N2QiIC8+PC9hPgoKIyMgQ29uZmlndXJhdGlvbgoKPiBbIVRJUF0K\nPiBDcnVzaCBzaGlwcyB3aXRoIGEgYnVpbHRpbiBgY3J1c2gtY29uZmlnYCBz\na2lsbCBmb3IgY29uZmlndXJpbmcgaXRzZWxmLiBJbgo+IG1hbnkgY2FzZXMg\neW91IGNhbiBzaW1wbHkgYXNrIENydXNoIHRvIGNvbmZpZ3VyZSBpdHNlbGYu\nCgpDcnVzaCBydW5zIGdyZWF0IHdpdGggbm8gY29uZmlndXJhdGlvbi4gVGhh\ndCBzYWlkLCBpZiB5b3UgZG8gbmVlZCBvciB3YW50IHRvCmN1c3RvbWl6ZSBD\ncnVzaCwgY29uZmlndXJhdGlvbiBjYW4gYmUgYWRkZWQgZWl0aGVyIGxvY2Fs\nIHRvIHRoZSBwcm9qZWN0IGl0c2VsZiwKb3IgZ2xvYmFsbHksIHdpdGggdGhl\nIGZvbGxvd2luZyBwcmlvcml0eToKCjEuIGAuY3J1c2guanNvbmAKMi4gYGNy\ndXNoLmpzb25gCjMuIGAkSE9NRS8uY29uZmlnL2NydXNoL2NydXNoLmpzb25g\nCgpDb25maWd1cmF0aW9uIGl0c2VsZiBpcyBzdG9yZWQgYXMgYSBKU09OIG9i\namVjdDoKCmBgYGpzb24KewogICJ0aGlzLXNldHRpbmciOiB7ICJ0aGlzIjog\nInRoYXQiIH0sCiAgInRoYXQtc2V0dGluZyI6IFsiY2VjaSIsICJjZWxhIl0K\nfQpgYGAKCkFzIGFuIGFkZGl0aW9uYWwgbm90ZSwgQ3J1c2ggYWxzbyBzdG9y\nZXMgZXBoZW1lcmFsIGRhdGEsIHN1Y2ggYXMgYXBwbGljYXRpb24Kc3RhdGUs\nIGluIG9uZSBhZGRpdGlvbmFsIGxvY2F0aW9uOgoKYGBgYmFzaAojIFVuaXgK\nJEhPTUUvLmxvY2FsL3NoYXJlL2NydXNoL2NydXNoLmpzb24KCiMgV2luZG93\ncwolTE9DQUxBUFBEQVRBJVxjcnVzaFxjcnVzaC5qc29uCmBgYAoKPiBbIVRJ\nUF0KPiBZb3UgY2FuIG92ZXJyaWRlIHRoZSB1c2VyIGFuZCBkYXRhIGNvbmZp\nZyBsb2NhdGlvbnMgYnkgc2V0dGluZzoKPgo+IC0gYENSVVNIX0dMT0JBTF9D\nT05GSUdgCj4gLSBgQ1JVU0hfR0xPQkFMX0RBVEFgCgojIyMgTFNQcwoKQ3J1\nc2ggY2FuIHVzZSBMU1BzIGZvciBhZGRpdGlvbmFsIGNvbnRleHQgdG8gaGVs\ncCBpbmZvcm0gaXRzIGRlY2lzaW9ucywganVzdApsaWtlIHlvdSB3b3VsZC4g\nTFNQcyBjYW4gYmUgYWRkZWQgbWFudWFsbHkgbGlrZSBzbzoKCmBgYGpzb24K\newogICIkc2NoZW1hIjogImh0dHBzOi8vY2hhcm0ubGFuZC9jcnVzaC5qc29u\nIiwKICAibHNwIjogewogICAgImdvIjogewogICAgICAiY29tbWFuZCI6ICJn\nb3BscyIsCiAgICAgICJlbnYiOiB7CiAgICAgICAgIkdPVE9PTENIQUlOIjog\nImdvMS4yNC41IgogICAgICB9CiAgICB9LAogICAgInR5cGVzY3JpcHQiOiB7\nCiAgICAgICJjb21tYW5kIjogInR5cGVzY3JpcHQtbGFuZ3VhZ2Utc2VydmVy\nIiwKICAgICAgImFyZ3MiOiBbIi0tc3RkaW8iXQogICAgfSwKICAgICJuaXgi\nOiB7CiAgICAgICJjb21tYW5kIjogIm5pbCIKICAgIH0KICB9Cn0KYGBgCgoj\nIyMgTUNQcwoKQ3J1c2ggYWxzbyBzdXBwb3J0cyBNb2RlbCBDb250ZXh0IFBy\nb3RvY29sIChNQ1ApIHNlcnZlcnMgdGhyb3VnaCB0aHJlZSB0cmFuc3BvcnQK\ndHlwZXM6IGBzdGRpb2AgZm9yIGNvbW1hbmQtbGluZSBzZXJ2ZXJzLCBgaHR0\ncGAgZm9yIEhUVFAgZW5kcG9pbnRzLCBhbmQgYHNzZWAKZm9yIFNlcnZlci1T\nZW50IEV2ZW50cy4KClNoZWxsLXN0eWxlIHZhbHVlIGV4cGFuc2lvbiAoYCRW\nQVJgLCBgJHtWQVI6LWRlZmF1bHR9YCwgYCQoY29tbWFuZClgLCBxdW90aW5n\nLApuZXN0aW5nKSB3b3JrcyBpbiBgY29tbWFuZGAsIGBhcmdzYCwgYGVudmAs\nIGBoZWFkZXJzYCwgYW5kIGB1cmxgLCBzbwpmaWxlLWJhc2VkIHNlY3JldHMg\nd29yayBvdXQgb2YgdGhlIGJveC4gWW91IGNhbiB1c2UgdmFsdWVzIGxpa2Ug\nYCIkVE9LRU4iYApvciBgIiQoY2F0IC9wYXRoL3RvL3NlY3JldC90b2tlbiki\nYC4gRXhwYW5zaW9uIHJ1bnMgdGhyb3VnaCBDcnVzaCdzIGVtYmVkZGVkCnNo\nZWxsLCBzbyB0aGUgc2FtZSBzeW50YXggd29ya3Mgb24gZXZlcnkgc3VwcG9y\ndGVkIHN5c3RlbSwgV2luZG93cyBpbmNsdWRlZC4KClVuc2V0IHZhcmlhYmxl\ncyBleHBhbmQgdG8gdGhlIGVtcHR5IHN0cmluZyBieSBkZWZhdWx0LCBtYXRj\naGluZyBiYXNoLiBGb3IKcmVxdWlyZWQgY3JlZGVudGlhbHMsIHVzZSBgJHtW\nQVI6P21lc3NhZ2V9YCBzbyBhbiB1bnNldCB2YXJpYWJsZSBmYWlscyBsb3Vk\nbHkKYXQgbG9hZCB0aW1lIHdpdGggYG1lc3NhZ2VgIGluc3RlYWQgb2Ygc2ls\nZW50bHkgcmVzb2x2aW5nIHRvIGVtcHR5OgoKYGBganNvbgp7ICJhcGlfa2V5\nIjogIiR7Q09ERUJFUkdfVE9LRU46P3NldCBDT0RFQkVSR19UT0tFTn0iIH0K\nYGBgCgpIZWFkZXJzIChib3RoIE1DUCBgaGVhZGVyc2AgYW5kIHByb3ZpZGVy\nIGBleHRyYV9oZWFkZXJzYCkgd2hvc2UgdmFsdWUKcmVzb2x2ZXMgdG8gdGhl\nIGVtcHR5IHN0cmluZyBhcmUgZHJvcHBlZCBmcm9tIHRoZSBvdXRnb2luZyBy\nZXF1ZXN0IHJhdGhlcgp0aGFuIHNlbnQgYXMgYEhlYWRlcjpgLiBUaGF0IGtl\nZXBzIG9wdGlvbmFsIGVudi1nYXRlZCBoZWFkZXJzIGxpa2UKYCJPcGVuQUkt\nT3JnYW5pemF0aW9uIjogIiRPUEVOQUlfT1JHX0lEImAgY2xlYW4gd2hlbiB0\naGUgdmFyaWFibGUgaXMgdW5zZXQuCgpQcm92aWRlciBgZXh0cmFfYm9keWAg\naXMgYSBub24tZXhwYW5kaW5nIEpTT04gcGFzc3Rocm91Z2g7IHB1dCBlbnYt\nZHJpdmVuCnZhbHVlcyBpbiBgZXh0cmFfaGVhZGVyc2Agb3IgdGhlIHByb3Zp\nZGVyJ3MgYGFwaV9rZXlgIC8gYGJhc2VfdXJsYCwgYWxsIG9mCndoaWNoIGRv\nIGV4cGFuZC4KCj4gKipTZWN1cml0eSBub3RlOioqIGBjcnVzaC5qc29uYCBp\ncyB0cnVzdGVkIGNvZGUuIEFueSBgJCguLi4pYCBpbiBpdCBydW5zIGF0Cj4g\nbG9hZCB0aW1lIHdpdGggeW91ciBzaGVsbCdzIHByaXZpbGVnZXMsIGJlZm9y\nZSB0aGUgVUkgYXBwZWFycy4gRG9uJ3QgbGF1bmNoCj4gQ3J1c2ggaW4gYSBk\naXJlY3Rvcnkgd2hvc2UgYGNydXNoLmpzb25gIHlvdSBoYXZlbid0IHJldmll\nd2VkLgoKYGBganNvbgp7CiAgIiRzY2hlbWEiOiAiaHR0cHM6Ly9jaGFybS5s\nYW5kL2NydXNoLmpzb24iLAogICJtY3AiOiB7CiAgICAiZmlsZXN5c3RlbSI6\nIHsKICAgICAgInR5cGUiOiAic3RkaW8iLAogICAgICAiY29tbWFuZCI6ICJu\nb2RlIiwKICAgICAgImFyZ3MiOiBbIi9wYXRoL3RvL21jcC1zZXJ2ZXIuanMi\nXSwKICAgICAgInRpbWVvdXQiOiAxMjAsCiAgICAgICJkaXNhYmxlZCI6IGZh\nbHNlLAogICAgICAiZGlzYWJsZWRfdG9vbHMiOiBbInNvbWUtdG9vbC1uYW1l\nIl0sCiAgICAgICJlbnYiOiB7CiAgICAgICAgIk5PREVfRU5WIjogInByb2R1\nY3Rpb24iCiAgICAgIH0KICAgIH0sCiAgICAiZ2l0aHViIjogewogICAgICAi\ndHlwZSI6ICJodHRwIiwKICAgICAgInVybCI6ICJodHRwczovL2FwaS5naXRo\ndWJjb3BpbG90LmNvbS9tY3AvIiwKICAgICAgInRpbWVvdXQiOiAxMjAsCiAg\nICAgICJkaXNhYmxlZCI6IGZhbHNlLAogICAgICAiZGlzYWJsZWRfdG9vbHMi\nOiBbImNyZWF0ZV9pc3N1ZSIsICJjcmVhdGVfcHVsbF9yZXF1ZXN0Il0sCiAg\nICAgICJoZWFkZXJzIjogewogICAgICAgICJBdXRob3JpemF0aW9uIjogIkJl\nYXJlciAkR0hfUEFUIgogICAgICB9CiAgICB9LAogICAgInN0cmVhbWluZy1z\nZXJ2aWNlIjogewogICAgICAidHlwZSI6ICJzc2UiLAogICAgICAidXJsIjog\nImh0dHBzOi8vZXhhbXBsZS5jb20vbWNwL3NzZSIsCiAgICAgICJ0aW1lb3V0\nIjogMTIwLAogICAgICAiZGlzYWJsZWQiOiBmYWxzZSwKICAgICAgImhlYWRl\ncnMiOiB7CiAgICAgICAgIkFQSS1LZXkiOiAiJChlY2hvICRBUElfS0VZKSIK\nICAgICAgfQogICAgfQogIH0KfQpgYGAKCiMjIyBIb29rcwoKQ3J1c2ggaGFz\nIHByZWxpbWluYXJ5IHN1cHBvcnQgZm9yIGhvb2tzLiBGb3IgZGV0YWlscywg\nc2VlClt0aGUgaG9vayBndWlkZV0oLi9kb2NzL2hvb2tzLykuCgojIyMgU2hh\ncmluZyBhIHdvcmtzcGFjZSBhY3Jvc3MgY2xpZW50cwoKV2hlbiBDcnVzaCBp\ncyBydW4gYWdhaW5zdCBhIHNoYXJlZCBiYWNrZW5kIChmb3IgZXhhbXBsZSB0\nd28gVFVJcyB0YWxraW5nIHRvCnRoZSBzYW1lIGBjcnVzaCBzZXJ2ZWApLCBj\nbGllbnRzIGFyZSBncm91cGVkIGludG8gKip3b3Jrc3BhY2VzKioga2V5ZWQg\nYnkKdGhlaXIgcmVzb2x2ZWQgYC0tY3dkYC4gVHdvIGNsaWVudHMgd2l0aCB0\naGUgc2FtZSBgLS1jd2RgIGpvaW4gdGhlIHNhbWUKdW5kZXJseWluZyB3b3Jr\nc3BhY2UsIHNvIHRoZXkgc2hhcmUgdGhlIHNlc3Npb24gbGlzdCwgbWVzc2Fn\nZSBoaXN0b3J5LApwZXJtaXNzaW9uIHF1ZXVlLCBMU1AsIGFuZCBNQ1Agc3Rh\ndGUuCgpKb2luaW5nIGlzIGltcGxpY2l0OiBwb2ludGluZyBhIHNlY29uZCBj\nbGllbnQgYXQgdGhlIHNhbWUgd29ya2luZyBkaXJlY3RvcnkKYXR0YWNoZXMg\naXQgdG8gdGhlIGV4aXN0aW5nIHdvcmtzcGFjZS4gRWFjaCBuZXcgaW52b2Nh\ndGlvbiwgaG93ZXZlciwgc3RhcnRzCmluIGl0cyBvd24gZnJlc2ggc2Vzc2lv\nbiBieSBkZWZhdWx0LiBUbyBwaWNrIHVwIHRoZSBjb252ZXJzYXRpb24gYW5v\ndGhlcgpjbGllbnQgYWxyZWFkeSBoYXMgb3BlbiwgdXNlIHRoZSBzZXNzaW9u\nIG1hbmFnZXIgKHRoZSBzZXNzaW9uIHBpY2tlcikgYW5kCnNlbGVjdCBpdC4g\nU2Vzc2lvbnMgc3VyZmFjZSB0d28gc2lnbmFscyB0aGVyZToKCi0gYElzQnVz\neWAgaXMgc2V0IHdoaWxlIGFuIGFnZW50IHR1cm4gaXMgaW4gZmxpZ2h0IGZv\nciB0aGF0IHNlc3Npb24uCi0gYEF0dGFjaGVkQ2xpZW50c2AgcmVwb3J0cyBo\nb3cgbWFueSBjbGllbnRzIGFyZSBjdXJyZW50bHkgdmlld2luZyBpdC4KCkEg\nbm9uLXplcm8gYEF0dGFjaGVkQ2xpZW50c2AgKG9mdGVuIGNvbWJpbmVkIHdp\ndGggYElzQnVzeWApIGlzIHRoZSBjdWUgdGhhdCBhCnNlc3Npb24gaXMgImlu\nIHByb2dyZXNzIiBvbiBhbm90aGVyIGNsaWVudCBhbmQgam9pbmluZyBpdCB3\naWxsIG1pcnJvciB0aGF0CnZpZXcgbGl2ZS4KClRoZSBmaXJzdCBjbGllbnQg\ndG8gY3JlYXRlIGEgd29ya3NwYWNlIGZpeGVzIGl0cyBwcm9jZXNzLXdpZGUg\nZmxhZ3MuIEluCnBhcnRpY3VsYXIsIGAtLXlvbG9gIGFuZCBgLS1kZWJ1Z2Ag\nZm9sbG93IGEgKipmaXJzdC13aW5zKiogcnVsZTogbGF0ZXIKY2xpZW50cyB0\naGF0IGFycml2ZSBhdCB0aGUgc2FtZSBgLS1jd2RgIHdpdGggZGlmZmVyZW50\nIHZhbHVlcyBmb3IgdGhvc2UKZmxhZ3MgZG8gbm90IGNoYW5nZSB0aGUgcnVu\nbmluZyB3b3Jrc3BhY2UuIEEgZGVidWcgbG9nIGxpbmUgaXMgZW1pdHRlZApy\nZWNvcmRpbmcgdGhlIG1pc21hdGNoLCBhbmQgdGhlIHdvcmtzcGFjZSBrZWVw\ncyB0aGUgZmxhZ3MgaXQgd2FzIGNyZWF0ZWQKd2l0aC4KCkEgd29ya3NwYWNl\nIGxpdmVzIGFzIGxvbmcgYXMgYXQgbGVhc3Qgb25lIGNsaWVudCBoYXMgYW4g\nU1NFIGV2ZW50IHN0cmVhbQpvcGVuIGFnYWluc3QgaXQuIFdoZW4gdGhlIGxh\nc3Qgc3RyZWFtIGRpc2Nvbm5lY3RzLCB0aGUgd29ya3NwYWNlIGlzIHRvcm4K\nZG93bi4gVGhlcmUgaXMgYSBzaG9ydCBncmFjZSB3aW5kb3cgcmlnaHQgYWZ0\nZXIgYFBPU1QgL3YxL3dvcmtzcGFjZXNgIHNvIGEKY2xpZW50IHRoYXQgaGFz\nIGNyZWF0ZWQgdGhlIHdvcmtzcGFjZSBidXQgbm90IHlldCBvcGVuZWQgaXRz\nIGV2ZW50IHN0cmVhbQpkb2VzIG5vdCBnZXQgcmVhcGVkIGJlZm9yZSBpdCBj\nYW4gYXR0YWNoLgoKIyMjIEdsb2JhbCBjb250ZXh0IGZpbGVzCgpDcnVzaCBh\ndXRvbWF0aWNhbGx5IGluY2x1ZGVzIHR3byBmaWxlcyBmb3IgY3Jvc3MtcHJv\namVjdCBpbnN0cnVjdGlvbnMuCgotIGB+Ly5jb25maWcvY3J1c2gvQ1JVU0gu\nbWRgOiBDcnVzaC1zcGVjaWZpYyBydWxlcyB0aGF0IHdvdWxkIGNvbmZ1c2Ug\nb3RoZXIKICBhZ2VudGljIGNvZGluZyB0b29scy4gSWYgeW91IG9ubHkgdXNl\nIENydXNoLCB0aGlzIGlzIHRoZSBvbmx5IG9uZSB5b3UgbmVlZCB0bwogIGVk\naXQuCi0gYH4vLmNvbmZpZy9BR0VOVFMubWRgOiBnZW5lcmljIGluc3RydWN0\naW9ucyB0aGF0IG90aGVyIGNvZGluZyB0b29scyBtaWdodAogIHJlYWQuIEF2\nb2lkIHJlZmVycmluZyB0byBDcnVzaC1zcGVjaWZpYyBmZWF0dXJlcyBvciB3\nb3JrZmxvd3MgaGVyZS4gWW91CiAgcHJvYmFibHkgb25seSBjYXJlIGFib3V0\nIHRoaXMgaWYgeW91IHVzZSBtdWx0aXBsZSBhZ2VudGljIGNvZGluZyB0b29s\ncyBhbmQKICB3YW50IHRvIHNoYXJlIGluc3RydWN0aW9ucyBiZXR3ZWVuIHRo\nZW0uCgpZb3UgY2FuIGN1c3RvbWl6ZSB0aGVzZSBwYXRocyB1c2luZyB0aGUg\nYGdsb2JhbF9jb250ZXh0X3BhdGhzYCBvcHRpb24gaW4geW91cgpjb25maWd1\ncmF0aW9uOgoKYGBganNvbmMKewogICIkc2NoZW1hIjogImh0dHBzOi8vY2hh\ncm0ubGFuZC9jcnVzaC5qc29uIiwKICAib3B0aW9ucyI6IHsKICAgICJnbG9i\nYWxfY29udGV4dF9wYXRocyI6IFsKICAgICAgIn4vcGF0aC90by9jdXN0b20v\nY29udGV4dC9maWxlLm1kIiwKICAgICAgIi9mdWxsL3BhdGgvdG8vZm9sZGVy\nL29mL2ZpbGVzLyIgLy8gcmVjdXJzaXZlbHkgbG9hZCBhbGwgLm1kIGZpbGVz\nIGluIGZvbGRlcgogICAgXQogIH0KfQpgYGAKCiMjIyBJZ25vcmluZyBGaWxl\ncwoKQ3J1c2ggcmVzcGVjdHMgYC5naXRpZ25vcmVgIGZpbGVzIGJ5IGRlZmF1\nbHQsIGJ1dCB5b3UgY2FuIGFsc28gY3JlYXRlIGEKYC5jcnVzaGlnbm9yZWAg\nZmlsZSB0byBzcGVjaWZ5IGFkZGl0aW9uYWwgZmlsZXMgYW5kIGRpcmVjdG9y\naWVzIHRoYXQgQ3J1c2gKc2hvdWxkIGlnbm9yZS4gVGhpcyBpcyB1c2VmdWwg\nZm9yIGV4Y2x1ZGluZyBmaWxlcyB0aGF0IHlvdSB3YW50IGluIHZlcnNpb24K\nY29udHJvbCBidXQgZG9uJ3Qgd2FudCBDcnVzaCB0byBjb25zaWRlciB3aGVu\nIHByb3ZpZGluZyBjb250ZXh0LgoKVGhlIGAuY3J1c2hpZ25vcmVgIGZpbGUg\ndXNlcyB0aGUgc2FtZSBzeW50YXggYXMgYC5naXRpZ25vcmVgIGFuZCBjYW4g\nYmUgcGxhY2VkCmluIHRoZSByb290IG9mIHlvdXIgcHJvamVjdCBvciBpbiBz\ndWJkaXJlY3Rvcmllcy4KCiMjIyBBbGxvd2luZyBUb29scwoKQnkgZGVmYXVs\ndCwgQ3J1c2ggd2lsbCBhc2sgeW91IGZvciBwZXJtaXNzaW9uIGJlZm9yZSBy\ndW5uaW5nIHRvb2wgY2FsbHMuIElmCnlvdSdkIGxpa2UsIHlvdSBjYW4gYWxs\nb3cgdG9vbHMgdG8gYmUgZXhlY3V0ZWQgd2l0aG91dCBwcm9tcHRpbmcgeW91\nIGZvcgpwZXJtaXNzaW9ucy4gVXNlIHRoaXMgd2l0aCBjYXJlLgoKYGBganNv\nbgp7CiAgIiRzY2hlbWEiOiAiaHR0cHM6Ly9jaGFybS5sYW5kL2NydXNoLmpz\nb24iLAogICJwZXJtaXNzaW9ucyI6IHsKICAgICJhbGxvd2VkX3Rvb2xzIjog\nWwogICAgICAidmlldyIsCiAgICAgICJscyIsCiAgICAgICJncmVwIiwKICAg\nICAgImVkaXQiLAogICAgICAibWNwX2NvbnRleHQ3X2dldC1saWJyYXJ5LWRv\nYyIKICAgIF0KICB9Cn0KYGBgCgpZb3UgY2FuIGFsc28gc2tpcCBhbGwgcGVy\nbWlzc2lvbiBwcm9tcHRzIGVudGlyZWx5IGJ5IHJ1bm5pbmcgQ3J1c2ggd2l0\naCB0aGUKYC0teW9sb2AgZmxhZy4gQmUgdmVyeSwgdmVyeSBjYXJlZnVsIHdp\ndGggdGhpcyBmZWF0dXJlLgoKIyMjIERpc2FibGluZyBCdWlsdC1JbiBUb29s\ncwoKSWYgeW91J2QgbGlrZSB0byBwcmV2ZW50IENydXNoIGZyb20gdXNpbmcg\nY2VydGFpbiBidWlsdC1pbiB0b29scyBlbnRpcmVseSwgeW91CmNhbiBkaXNh\nYmxlIHRoZW0gdmlhIHRoZSBgb3B0aW9ucy5kaXNhYmxlZF90b29sc2AgbGlz\ndC4gRGlzYWJsZWQgdG9vbHMgYXJlCmNvbXBsZXRlbHkgaGlkZGVuIGZyb20g\ndGhlIGFnZW50LgoKYGBganNvbgp7CiAgIiRzY2hlbWEiOiAiaHR0cHM6Ly9j\naGFybS5sYW5kL2NydXNoLmpzb24iLAogICJvcHRpb25zIjogewogICAgImRp\nc2FibGVkX3Rvb2xzIjogWyJiYXNoIiwgInNvdXJjZWdyYXBoIl0KICB9Cn0K\nYGBgCgpUbyBkaXNhYmxlIHRvb2xzIGZyb20gTUNQIHNlcnZlcnMsIHNlZSB0\naGUgW01DUCBjb25maWcgc2VjdGlvbl0oI21jcHMpLgoKIyMjIERpc2FibGlu\nZyBTa2lsbHMKCklmIHlvdSdkIGxpa2UgdG8gcHJldmVudCBDcnVzaCBmcm9t\nIHVzaW5nIGNlcnRhaW4gc2tpbGxzIGVudGlyZWx5LCB5b3UgY2FuCmRpc2Fi\nbGUgdGhlbSB2aWEgdGhlIGBvcHRpb25zLmRpc2FibGVkX3NraWxsc2AgbGlz\ndC4gRGlzYWJsZWQgc2tpbGxzIGFyZSBoaWRkZW4KZnJvbSB0aGUgYWdlbnQs\nIGluY2x1ZGluZyBidWlsdGluIHNraWxscyBhbmQgc2tpbGxzIGRpc2NvdmVy\nZWQgZnJvbSBkaXNrLgoKYGBganNvbgp7CiAgIiRzY2hlbWEiOiAiaHR0cHM6\nLy9jaGFybS5sYW5kL2NydXNoLmpzb24iLAogICJvcHRpb25zIjogewogICAg\nImRpc2FibGVkX3NraWxscyI6IFsiY3J1c2gtY29uZmlnIl0KICB9Cn0KYGBg\nCgojIyMgQWdlbnQgU2tpbGxzCgpDcnVzaCBzdXBwb3J0cyB0aGUgW0FnZW50\nIFNraWxsc10oaHR0cHM6Ly9hZ2VudHNraWxscy5pbykgb3BlbiBzdGFuZGFy\nZCBmb3IKZXh0ZW5kaW5nIGFnZW50IGNhcGFiaWxpdGllcyB3aXRoIHJldXNh\nYmxlIHNraWxsIHBhY2thZ2VzLiBTa2lsbHMgYXJlIGZvbGRlcnMKY29udGFp\nbmluZyBhIGBTS0lMTC5tZGAgZmlsZSB3aXRoIGluc3RydWN0aW9ucyB0aGF0\nIENydXNoIGNhbiBkaXNjb3ZlciBhbmQKYWN0aXZhdGUgb24gZGVtYW5kLgoK\nVGhlIGdsb2JhbCBwYXRocyB3ZSBsb29rcyBmb3Igc2tpbGxzIGFyZToKCiog\nYCRDUlVTSF9TS0lMTFNfRElSYAoqIGAkWERHX0NPTkZJR19IT01FL2FnZW50\ncy9za2lsbHNgIG9yIGB+Ly5jb25maWcvYWdlbnRzL3NraWxscy9gCiogYCRY\nREdfQ09ORklHX0hPTUUvY3J1c2gvc2tpbGxzYCBvciBgfi8uY29uZmlnL2Ny\ndXNoL3NraWxscy9gCiogYH4vLmFnZW50cy9za2lsbHMvYAoqIGB+Ly5jbGF1\nZGUvc2tpbGxzL2AKKiBPbiBXaW5kb3dzLCB3ZSBfYWxzb18gbG9vayBhdAog\nICogYCVMT0NBTEFQUERBVEElXGFnZW50c1xza2lsbHNcYCBvciBgJVVTRVJQ\nUk9GSUxFJVxBcHBEYXRhXExvY2FsXGFnZW50c1xza2lsbHNcYAogICogYCVM\nT0NBTEFQUERBVEElXGNydXNoXHNraWxsc1xgIG9yIGAlVVNFUlBST0ZJTEUl\nXEFwcERhdGFcTG9jYWxcY3J1c2hcc2tpbGxzXGAKKiBBZGRpdGlvbmFsIHBh\ndGhzIGNvbmZpZ3VyZWQgdmlhIGBvcHRpb25zLnNraWxsc19wYXRoc2AKCk9u\nIHRvcCBvZiB0aGF0LCB3ZSBfYWxzb18gbG9hZCBza2lsbHMgaW4geW91ciBw\ncm9qZWN0IGZyb20gdGhlIGZvbGxvd2luZwpyZWxhdGl2ZSBwYXRoczoKCiog\nYC5hZ2VudHMvc2tpbGxzYAoqIGAuY3J1c2gvc2tpbGxzYAoqIGAuY2xhdWRl\nL3NraWxsc2AKKiBgLmN1cnNvci9za2lsbHNgCgpgYGBqc29uYwp7CiAgIiRz\nY2hlbWEiOiAiaHR0cHM6Ly9jaGFybS5sYW5kL2NydXNoLmpzb24iLAogICJv\ncHRpb25zIjogewogICAgInNraWxsc19wYXRocyI6IFsKICAgICAgIn4vLmNv\nbmZpZy9jcnVzaC9za2lsbHMiLCAvLyBXaW5kb3dzOiAiJUxPQ0FMQVBQREFU\nQSVcXGNydXNoXFxza2lsbHMiLAogICAgICAiLi9wcm9qZWN0LXNraWxscyIs\nCiAgICBdLAogIH0sCn0KYGBgCgpZb3UgY2FuIGdldCBzdGFydGVkIHdpdGgg\nZXhhbXBsZSBza2lsbHMgZnJvbSBbYW50aHJvcGljcy9za2lsbHNdKGh0dHBz\nOi8vZ2l0aHViLmNvbS9hbnRocm9waWNzL3NraWxscyk6CgpgYGBiYXNoCiMg\nVW5peApta2RpciAtcCB+Ly5jb25maWcvY3J1c2gvc2tpbGxzCmNkIH4vLmNv\nbmZpZy9jcnVzaC9za2lsbHMKZ2l0IGNsb25lIGh0dHBzOi8vZ2l0aHViLmNv\nbS9hbnRocm9waWNzL3NraWxscy5naXQgX3RlbXAKbXYgX3RlbXAvc2tpbGxz\nLyogLiAmJiBybSAtcmYgX3RlbXAKYGBgCgpgYGBwb3dlcnNoZWxsCiMgV2lu\nZG93cyAoUG93ZXJTaGVsbCkKbWtkaXIgLUZvcmNlICIkZW52OkxPQ0FMQVBQ\nREFUQVxjcnVzaFxza2lsbHMiCmNkICIkZW52OkxPQ0FMQVBQREFUQVxjcnVz\naFxza2lsbHMiCmdpdCBjbG9uZSBodHRwczovL2dpdGh1Yi5jb20vYW50aHJv\ncGljcy9za2lsbHMuZ2l0IF90ZW1wCm12IF90ZW1wL3NraWxscy8qIC4gOyBy\nbSAtciAtZm9yY2UgX3RlbXAKYGBgCgojIyMjIFVzZXItSW52b2NhYmxlIFNr\naWxscwoKU2tpbGxzIGNhbiBiZSBtYWRlIGludm9jYWJsZSBhcyBjb21tYW5k\ncyBmcm9tIHRoZSBjb21tYW5kcyBwYWxldHRlIChDdHJsK1ApLiBBZGQgYHVz\nZXItaW52b2NhYmxlOiB0cnVlYCB0byB0aGUgc2tpbGwncyBZQU1MIGZyb250\nbWF0dGVyOgoKYGBgeWFtbAotLS0KbmFtZTogbXktc2tpbGwKZGVzY3JpcHRp\nb246IEEgc2tpbGwgdGhhdCBjYW4gYmUgaW52b2tlZCBhcyBhIGNvbW1hbmQu\nCnVzZXItaW52b2NhYmxlOiB0cnVlCi0tLQpgYGAKClVzZXItaW52b2NhYmxl\nIHNraWxscyBhcHBlYXIgaW4gdGhlIGNvbW1hbmRzIHBhbGV0dGUgd2l0aCBh\nIGB1c2VyOmAgb3IgYHByb2plY3Q6YCBwcmVmaXg6Ci0gU2tpbGxzIGZyb20g\nZ2xvYmFsIGRpcmVjdG9yaWVzIHNob3cgYXMgYHVzZXI6c2tpbGwtbmFtZWAK\nLSBTa2lsbHMgZnJvbSBwcm9qZWN0IGRpcmVjdG9yaWVzIHNob3cgYXMgYHBy\nb2plY3Q6c2tpbGwtbmFtZWAKCldoZW4gaW52b2tlZCwgdGhlIHNraWxsJ3Mg\naW5zdHJ1Y3Rpb25zIGFyZSBsb2FkZWQgaW50byB0aGUgY29udmVyc2F0aW9u\nIGNvbnRleHQuCgpUbyBwcmV2ZW50IHRoZSBtb2RlbCBmcm9tIGF1dG8tdHJp\nZ2dlcmluZyBhIHNraWxsICh3aGlsZSBzdGlsbCBhbGxvd2luZyB1c2VyIGlu\ndm9jYXRpb24pLCBhZGQgYGRpc2FibGUtbW9kZWwtaW52b2NhdGlvbjogdHJ1\nZWA6CgpgYGB5YW1sCi0tLQpuYW1lOiBteS1za2lsbApkZXNjcmlwdGlvbjog\nT25seSBpbnZvY2FibGUgYnkgdXNlcnMsIG5vdCB0aGUgbW9kZWwuCnVzZXIt\naW52b2NhYmxlOiB0cnVlCmRpc2FibGUtbW9kZWwtaW52b2NhdGlvbjogdHJ1\nZQotLS0KYGBgCgpTa2lsbHMgd2l0aCBgZGlzYWJsZS1tb2RlbC1pbnZvY2F0\naW9uYCB3b24ndCBhcHBlYXIgaW4gdGhlIG1vZGVsJ3MgYXZhaWxhYmxlIHNr\naWxscyBsaXN0IGJ1dCBjYW4gc3RpbGwgYmUgaW52b2tlZCBtYW51YWxseSBi\neSB1c2Vycy4KCiMjIyBEZXNrdG9wIG5vdGlmaWNhdGlvbnMKCkNydXNoIHNl\nbmRzIGRlc2t0b3Agbm90aWZpY2F0aW9ucyB3aGVuIGEgdG9vbCBjYWxsIHJl\ncXVpcmVzIHBlcm1pc3Npb24gYW5kIHdoZW4KdGhlIGFnZW50IGZpbmlzaGVz\nIGl0cyB0dXJuLiBUaGV5J3JlIG9ubHkgc2VudCB3aGVuIHRoZSB0ZXJtaW5h\nbCB3aW5kb3cgaXNuJ3QKZm9jdXNlZCBfYW5kXyB5b3VyIHRlcm1pbmFsIHN1\ncHBvcnRzIHJlcG9ydGluZyB0aGUgZm9jdXMgc3RhdGUuCgpgYGBqc29uYwp7\nCiAgIiRzY2hlbWEiOiAiaHR0cHM6Ly9jaGFybS5sYW5kL2NydXNoLmpzb24i\nLAogICJvcHRpb25zIjogewogICAgImRpc2FibGVfbm90aWZpY2F0aW9ucyI6\nIGZhbHNlLCAvLyBkZWZhdWx0CiAgfSwKfQpgYGAKClRvIGRpc2FibGUgZGVz\na3RvcCBub3RpZmljYXRpb25zLCBzZXQgYGRpc2FibGVfbm90aWZpY2F0aW9u\nc2AgdG8gYHRydWVgIGluIHlvdXIKY29uZmlndXJhdGlvbi4gT24gbWFjT1Ms\nIG5vdGlmaWNhdGlvbnMgY3VycmVudGx5IGxhY2sgaWNvbnMgZHVlIHRvIHBs\nYXRmb3JtCmxpbWl0YXRpb25zLgoKIyMjIEluaXRpYWxpemF0aW9uCgpXaGVu\nIHlvdSBpbml0aWFsaXplIGEgcHJvamVjdCwgQ3J1c2ggYW5hbHl6ZXMgeW91\nciBjb2RlYmFzZSBhbmQgY3JlYXRlcwphIGNvbnRleHQgZmlsZSB0aGF0IGhl\nbHBzIGl0IHdvcmsgbW9yZSBlZmZlY3RpdmVseSBpbiBmdXR1cmUgc2Vzc2lv\nbnMuCkJ5IGRlZmF1bHQsIHRoaXMgZmlsZSBpcyBuYW1lZCBgQUdFTlRTLm1k\nYCwgYnV0IHlvdSBjYW4gY3VzdG9taXplIHRoZQpuYW1lIGFuZCBsb2NhdGlv\nbiB3aXRoIHRoZSBgaW5pdGlhbGl6ZV9hc2Agb3B0aW9uOgoKYGBganNvbgp7\nCiAgIiRzY2hlbWEiOiAiaHR0cHM6Ly9jaGFybS5sYW5kL2NydXNoLmpzb24i\nLAogICJvcHRpb25zIjogewogICAgImluaXRpYWxpemVfYXMiOiAiQUdFTlRT\nLm1kIgogIH0KfQpgYGAKClRoaXMgaXMgdXNlZnVsIGlmIHlvdSBwcmVmZXIg\nYSBkaWZmZXJlbnQgbmFtaW5nIGNvbnZlbnRpb24gb3Igd2FudCB0bwpwbGFj\nZSB0aGUgZmlsZSBpbiBhIHNwZWNpZmljIGRpcmVjdG9yeSAoZS5nLiwgYENS\nVVNILm1kYCBvcgpgZG9jcy9MTE1zLm1kYCkuIENydXNoIHdpbGwgZmlsbCB0\naGUgZmlsZSB3aXRoIHByb2plY3Qtc3BlY2lmaWMgY29udGV4dApsaWtlIGJ1\naWxkIGNvbW1hbmRzLCBjb2RlIHBhdHRlcm5zLCBhbmQgY29udmVudGlvbnMg\naXQgZGlzY292ZXJlZCBkdXJpbmcKaW5pdGlhbGl6YXRpb24uCgojIyMgQXR0\ncmlidXRpb24gU2V0dGluZ3MKCkJ5IGRlZmF1bHQsIENydXNoIGFkZHMgYXR0\ncmlidXRpb24gaW5mb3JtYXRpb24gdG8gR2l0IGNvbW1pdHMgYW5kIHB1bGwg\ncmVxdWVzdHMKaXQgY3JlYXRlcy4gWW91IGNhbiBjdXN0b21pemUgdGhpcyBi\nZWhhdmlvciB3aXRoIHRoZSBgYXR0cmlidXRpb25gIG9wdGlvbjoKCmBgYGpz\nb24KewogICIkc2NoZW1hIjogImh0dHBzOi8vY2hhcm0ubGFuZC9jcnVzaC5q\nc29uIiwKICAib3B0aW9ucyI6IHsKICAgICJhdHRyaWJ1dGlvbiI6IHsKICAg\nICAgInRyYWlsZXJfc3R5bGUiOiAiY28tYXV0aG9yZWQtYnkiLAogICAgICAi\nZ2VuZXJhdGVkX3dpdGgiOiB0cnVlCiAgICB9CiAgfQp9CmBgYAoKLSBgdHJh\naWxlcl9zdHlsZWA6IENvbnRyb2xzIHRoZSBhdHRyaWJ1dGlvbiB0cmFpbGVy\nIGFkZGVkIHRvIGNvbW1pdCBtZXNzYWdlcwogIChkZWZhdWx0OiBgYXNzaXN0\nZWQtYnlgKQogIC0gYGFzc2lzdGVkLWJ5YDogQWRkcyBgQXNzaXN0ZWQtYnk6\nIENydXNoOltNb2RlbElEXWAgYXMgc3BlY2lmaWVkIGluIFt0aGUgY29udmVu\ndGlvbl0oaHR0cHM6Ly9kb2NzLmtlcm5lbC5vcmcvcHJvY2Vzcy9jb2Rpbmct\nYXNzaXN0YW50cy5odG1sI2F0dHJpYnV0aW9uKQogIC0gYGNvLWF1dGhvcmVk\nLWJ5YDogQWRkcyBgQ28tQXV0aG9yZWQtQnk6IENydXNoIDxjcnVzaEBjaGFy\nbS5sYW5kPmAKICAtIGBub25lYDogTm8gYXR0cmlidXRpb24gdHJhaWxlcgot\nIGBnZW5lcmF0ZWRfd2l0aGA6IFdoZW4gdHJ1ZSAoZGVmYXVsdCksIGFkZHMg\nYPCfkpggR2VuZXJhdGVkIHdpdGggQ3J1c2hgIGxpbmUgdG8KICBjb21taXQg\nbWVzc2FnZXMgYW5kIFBSIGRlc2NyaXB0aW9ucwoKIyMjIEN1c3RvbSBQcm92\naWRlcnMKCkNydXNoIHN1cHBvcnRzIGN1c3RvbSBwcm92aWRlciBjb25maWd1\ncmF0aW9ucyBmb3IgYm90aCBPcGVuQUktY29tcGF0aWJsZSBhbmQKQW50aHJv\ncGljLWNvbXBhdGlibGUgQVBJcy4KCj4gWyFOT1RFXQo+IE5vdGUgdGhhdCB3\nZSBzdXBwb3J0IHR3byAidHlwZXMiIGZvciBPcGVuQUkuIE1ha2Ugc3VyZSB0\nbyBjaG9vc2UgdGhlIHJpZ2h0IG9uZQo+IHRvIGVuc3VyZSB0aGUgYmVzdCBl\neHBlcmllbmNlIQo+Cj4gLSBgb3BlbmFpYCBzaG91bGQgYmUgdXNlZCB3aGVu\nIHByb3h5aW5nIG9yIHJvdXRpbmcgcmVxdWVzdHMgdGhyb3VnaCBPcGVuQUku\nCj4gLSBgb3BlbmFpLWNvbXBhdGAgc2hvdWxkIGJlIHVzZWQgd2hlbiB1c2lu\nZyBub24tT3BlbkFJIHByb3ZpZGVycyB0aGF0IGhhdmUgT3BlbkFJLWNvbXBh\ndGlibGUgQVBJcy4KCiMjIyMgT3BlbkFJLUNvbXBhdGlibGUgQVBJcwoKSGVy\nZeKAmXMgYW4gZXhhbXBsZSBjb25maWd1cmF0aW9uIGZvciBEZWVwc2Vlaywg\nd2hpY2ggdXNlcyBhbiBPcGVuQUktY29tcGF0aWJsZQpBUEkuIERvbid0IGZv\ncmdldCB0byBzZXQgYERFRVBTRUVLX0FQSV9LRVlgIGluIHlvdXIgZW52aXJv\nbm1lbnQuCgpgYGBqc29uCnsKICAiJHNjaGVtYSI6ICJodHRwczovL2NoYXJt\nLmxhbmQvY3J1c2guanNvbiIsCiAgInByb3ZpZGVycyI6IHsKICAgICJkZWVw\nc2VlayI6IHsKICAgICAgInR5cGUiOiAib3BlbmFpLWNvbXBhdCIsCiAgICAg\nICJiYXNlX3VybCI6ICJodHRwczovL2FwaS5kZWVwc2Vlay5jb20vdjEiLAog\nICAgICAiYXBpX2tleSI6ICIkREVFUFNFRUtfQVBJX0tFWSIsCiAgICAgICJt\nb2RlbHMiOiBbCiAgICAgICAgewogICAgICAgICAgImlkIjogImRlZXBzZWVr\nLWNoYXQiLAogICAgICAgICAgIm5hbWUiOiAiRGVlcHNlZWsgVjMiLAogICAg\nICAgICAgImNvc3RfcGVyXzFtX2luIjogMC4yNywKICAgICAgICAgICJjb3N0\nX3Blcl8xbV9vdXQiOiAxLjEsCiAgICAgICAgICAiY29zdF9wZXJfMW1faW5f\nY2FjaGVkIjogMC4wNywKICAgICAgICAgICJjb3N0X3Blcl8xbV9vdXRfY2Fj\naGVkIjogMS4xLAogICAgICAgICAgImNvbnRleHRfd2luZG93IjogNjQwMDAs\nCiAgICAgICAgICAiZGVmYXVsdF9tYXhfdG9rZW5zIjogNTAwMAogICAgICAg\nIH0KICAgICAgXQogICAgfQogIH0KfQpgYGAKCiMjIyMgQW50aHJvcGljLUNv\nbXBhdGlibGUgQVBJcwoKQ3VzdG9tIEFudGhyb3BpYy1jb21wYXRpYmxlIHBy\nb3ZpZGVycyBmb2xsb3cgdGhpcyBmb3JtYXQ6CgpgYGBqc29uCnsKICAiJHNj\naGVtYSI6ICJodHRwczovL2NoYXJtLmxhbmQvY3J1c2guanNvbiIsCiAgInBy\nb3ZpZGVycyI6IHsKICAgICJjdXN0b20tYW50aHJvcGljIjogewogICAgICAi\ndHlwZSI6ICJhbnRocm9waWMiLAogICAgICAiYmFzZV91cmwiOiAiaHR0cHM6\nLy9hcGkuYW50aHJvcGljLmNvbS92MSIsCiAgICAgICJhcGlfa2V5IjogIiRB\nTlRIUk9QSUNfQVBJX0tFWSIsCiAgICAgICJleHRyYV9oZWFkZXJzIjogewog\nICAgICAgICJhbnRocm9waWMtdmVyc2lvbiI6ICIyMDIzLTA2LTAxIgogICAg\nICB9LAogICAgICAibW9kZWxzIjogWwogICAgICAgIHsKICAgICAgICAgICJp\nZCI6ICJjbGF1ZGUtc29ubmV0LTQtMjAyNTA1MTQiLAogICAgICAgICAgIm5h\nbWUiOiAiQ2xhdWRlIFNvbm5ldCA0IiwKICAgICAgICAgICJjb3N0X3Blcl8x\nbV9pbiI6IDMsCiAgICAgICAgICAiY29zdF9wZXJfMW1fb3V0IjogMTUsCiAg\nICAgICAgICAiY29zdF9wZXJfMW1faW5fY2FjaGVkIjogMy43NSwKICAgICAg\nICAgICJjb3N0X3Blcl8xbV9vdXRfY2FjaGVkIjogMC4zLAogICAgICAgICAg\nImNvbnRleHRfd2luZG93IjogMjAwMDAwLAogICAgICAgICAgImRlZmF1bHRf\nbWF4X3Rva2VucyI6IDUwMDAwLAogICAgICAgICAgImNhbl9yZWFzb24iOiB0\ncnVlLAogICAgICAgICAgInN1cHBvcnRzX2F0dGFjaG1lbnRzIjogdHJ1ZQog\nICAgICAgIH0KICAgICAgXQogICAgfQogIH0KfQpgYGAKCiMjIyBBbWF6b24g\nQmVkcm9jawoKQ3J1c2ggY3VycmVudGx5IHN1cHBvcnRzIHJ1bm5pbmcgQW50\naHJvcGljIG1vZGVscyB0aHJvdWdoIEJlZHJvY2ssIHdpdGggY2FjaGluZyBk\naXNhYmxlZC4KCi0gQSBCZWRyb2NrIHByb3ZpZGVyIHdpbGwgYXBwZWFyIG9u\nY2UgeW91IGhhdmUgQVdTIGNvbmZpZ3VyZWQsIGkuZS4gYGF3cyBjb25maWd1\ncmVgCi0gQ3J1c2ggYWxzbyBleHBlY3RzIHRoZSBgQVdTX1JFR0lPTmAgb3Ig\nYEFXU19ERUZBVUxUX1JFR0lPTmAgdG8gYmUgc2V0Ci0gVG8gdXNlIGEgc3Bl\nY2lmaWMgQVdTIHByb2ZpbGUgc2V0IGBBV1NfUFJPRklMRWAgaW4geW91ciBl\nbnZpcm9ubWVudCwgaS5lLiBgQVdTX1BST0ZJTEU9bXlwcm9maWxlIGNydXNo\nYAotIEFsdGVybmF0aXZlbHkgdG8gYGF3cyBjb25maWd1cmVgLCB5b3UgY2Fu\nIGFsc28ganVzdCBzZXQgYEFXU19CRUFSRVJfVE9LRU5fQkVEUk9DS2AKCiMj\nIyBWZXJ0ZXggQUkgUGxhdGZvcm0KClZlcnRleCBBSSB3aWxsIGFwcGVhciBp\nbiB0aGUgbGlzdCBvZiBhdmFpbGFibGUgcHJvdmlkZXJzIHdoZW4gYFZFUlRF\nWEFJX1BST0pFQ1RgIGFuZCBgVkVSVEVYQUlfTE9DQVRJT05gIGFyZSBzZXQu\nIFlvdSB3aWxsIGFsc28gbmVlZCB0byBiZSBhdXRoZW50aWNhdGVkOgoKYGBg\nYmFzaApnY2xvdWQgYXV0aCBhcHBsaWNhdGlvbi1kZWZhdWx0IGxvZ2luCmBg\nYAoKVG8gYWRkIHNwZWNpZmljIG1vZGVscyB0byB0aGUgY29uZmlndXJhdGlv\nbiwgY29uZmlndXJlIGFzIHN1Y2g6CgpgYGBqc29uCnsKICAiJHNjaGVtYSI6\nICJodHRwczovL2NoYXJtLmxhbmQvY3J1c2guanNvbiIsCiAgInByb3ZpZGVy\ncyI6IHsKICAgICJ2ZXJ0ZXhhaSI6IHsKICAgICAgIm1vZGVscyI6IFsKICAg\nICAgICB7CiAgICAgICAgICAiaWQiOiAiY2xhdWRlLXNvbm5ldC00QDIwMjUw\nNTE0IiwKICAgICAgICAgICJuYW1lIjogIlZlcnRleEFJIFNvbm5ldCA0IiwK\nICAgICAgICAgICJjb3N0X3Blcl8xbV9pbiI6IDMsCiAgICAgICAgICAiY29z\ndF9wZXJfMW1fb3V0IjogMTUsCiAgICAgICAgICAiY29zdF9wZXJfMW1faW5f\nY2FjaGVkIjogMy43NSwKICAgICAgICAgICJjb3N0X3Blcl8xbV9vdXRfY2Fj\naGVkIjogMC4zLAogICAgICAgICAgImNvbnRleHRfd2luZG93IjogMjAwMDAw\nLAogICAgICAgICAgImRlZmF1bHRfbWF4X3Rva2VucyI6IDUwMDAwLAogICAg\nICAgICAgImNhbl9yZWFzb24iOiB0cnVlLAogICAgICAgICAgInN1cHBvcnRz\nX2F0dGFjaG1lbnRzIjogdHJ1ZQogICAgICAgIH0KICAgICAgXQogICAgfQog\nIH0KfQpgYGAKCiMjIyBMb2NhbCBNb2RlbHMKCkxvY2FsIG1vZGVscyBjYW4g\nYWxzbyBiZSBjb25maWd1cmVkIHZpYSBPcGVuQUktY29tcGF0aWJsZSBBUEku\nIEhlcmUgYXJlIHR3byBjb21tb24gZXhhbXBsZXM6CgojIyMjIE9sbGFtYQoK\nYGBganNvbgp7CiAgInByb3ZpZGVycyI6IHsKICAgICJvbGxhbWEiOiB7CiAg\nICAgICJuYW1lIjogIk9sbGFtYSIsCiAgICAgICJiYXNlX3VybCI6ICJodHRw\nOi8vbG9jYWxob3N0OjExNDM0L3YxLyIsCiAgICAgICJ0eXBlIjogIm9wZW5h\naS1jb21wYXQiLAogICAgICAibW9kZWxzIjogWwogICAgICAgIHsKICAgICAg\nICAgICJuYW1lIjogIlF3ZW4gMyAzMEIiLAogICAgICAgICAgImlkIjogInF3\nZW4zOjMwYiIsCiAgICAgICAgICAiY29udGV4dF93aW5kb3ciOiAyNTYwMDAs\nCiAgICAgICAgICAiZGVmYXVsdF9tYXhfdG9rZW5zIjogMjAwMDAKICAgICAg\nICB9CiAgICAgIF0KICAgIH0KICB9Cn0KYGBgCgojIyMjIExNIFN0dWRpbwoK\nYGBganNvbgp7CiAgInByb3ZpZGVycyI6IHsKICAgICJsbXN0dWRpbyI6IHsK\nICAgICAgIm5hbWUiOiAiTE0gU3R1ZGlvIiwKICAgICAgImJhc2VfdXJsIjog\nImh0dHA6Ly9sb2NhbGhvc3Q6MTIzNC92MS8iLAogICAgICAidHlwZSI6ICJv\ncGVuYWktY29tcGF0IiwKICAgICAgIm1vZGVscyI6IFsKICAgICAgICB7CiAg\nICAgICAgICAibmFtZSI6ICJRd2VuIDMgMzBCIiwKICAgICAgICAgICJpZCI6\nICJxd2VuL3F3ZW4zLTMwYi1hM2ItMjUwNyIsCiAgICAgICAgICAiY29udGV4\ndF93aW5kb3ciOiAyNTYwMDAsCiAgICAgICAgICAiZGVmYXVsdF9tYXhfdG9r\nZW5zIjogMjAwMDAKICAgICAgICB9CiAgICAgIF0KICAgIH0KICB9Cn0KYGBg\nCgojIyBMb2dnaW5nCgpTb21ldGltZXMgeW91IG5lZWQgdG8gbG9vayBhdCBs\nb2dzLiBMdWNraWx5LCBDcnVzaCBsb2dzIGFsbCBzb3J0cyBvZgpzdHVmZi4g\nTG9ncyBhcmUgc3RvcmVkIGluIGAuLy5jcnVzaC9sb2dzL2NydXNoLmxvZ2Ag\ncmVsYXRpdmUgdG8gdGhlIHByb2plY3QuCgpUaGUgQ0xJIGFsc28gY29udGFp\nbnMgc29tZSBoZWxwZXIgY29tbWFuZHMgdG8gbWFrZSBwZXJ1c2luZyByZWNl\nbnQgbG9ncyBlYXNpZXI6CgpgYGBiYXNoCiMgUHJpbnQgdGhlIGxhc3QgMTAw\nMCBsaW5lcwpjcnVzaCBsb2dzCgojIFByaW50IHRoZSBsYXN0IDUwMCBsaW5l\ncwpjcnVzaCBsb2dzIC0tdGFpbCA1MDAKCiMgRm9sbG93IGxvZ3MgaW4gcmVh\nbCB0aW1lCmNydXNoIGxvZ3MgLS1mb2xsb3cKYGBgCgpXYW50IG1vcmUgbG9n\nZ2luZz8gUnVuIGBjcnVzaGAgd2l0aCB0aGUgYC0tZGVidWdgIGZsYWcsIG9y\nIGVuYWJsZSBpdCBpbiB0aGUKY29uZmlnOgoKYGBganNvbgp7CiAgIiRzY2hl\nbWEiOiAiaHR0cHM6Ly9jaGFybS5sYW5kL2NydXNoLmpzb24iLAogICJvcHRp\nb25zIjogewogICAgImRlYnVnIjogdHJ1ZSwKICAgICJkZWJ1Z19sc3AiOiB0\ncnVlCiAgfQp9CmBgYAoKIyMgUHJvdmlkZXIgQXV0by1VcGRhdGVzCgpCeSBk\nZWZhdWx0LCBDcnVzaCBhdXRvbWF0aWNhbGx5IGNoZWNrcyBmb3IgdGhlIGxh\ndGVzdCBhbmQgZ3JlYXRlc3QgbGlzdCBvZgpwcm92aWRlcnMgYW5kIG1vZGVs\ncyBmcm9tIFtDYXR3YWxrXShodHRwczovL2dpdGh1Yi5jb20vY2hhcm1icmFj\nZWxldC9jYXR3YWxrKSwKdGhlIG9wZW4gc291cmNlIENydXNoIHByb3ZpZGVy\nIGRhdGFiYXNlLiBUaGlzIG1lYW5zIHRoYXQgd2hlbiBuZXcgcHJvdmlkZXJz\nIGFuZAptb2RlbHMgYXJlIGF2YWlsYWJsZSwgb3Igd2hlbiBtb2RlbCBtZXRh\nZGF0YSBjaGFuZ2VzLCBDcnVzaCBhdXRvbWF0aWNhbGx5CnVwZGF0ZXMgeW91\nciBsb2NhbCBjb25maWd1cmF0aW9uLgoKIyMjIERpc2FibGluZyBhdXRvbWF0\naWMgcHJvdmlkZXIgdXBkYXRlcwoKRm9yIHRob3NlIHdpdGggcmVzdHJpY3Rl\nZCBpbnRlcm5ldCBhY2Nlc3MsIG9yIHRob3NlIHdobyBwcmVmZXIgdG8gd29y\nayBpbgphaXItZ2FwcGVkIGVudmlyb25tZW50cywgdGhpcyBtaWdodCBub3Qg\nYmUgd2FudCB5b3Ugd2FudCwgYW5kIHRoaXMgZmVhdHVyZSBjYW4KYmUgZGlz\nYWJsZWQuCgpUbyBkaXNhYmxlIGF1dG9tYXRpYyBwcm92aWRlciB1cGRhdGVz\nLCBzZXQgYGRpc2FibGVfcHJvdmlkZXJfYXV0b191cGRhdGVgIGludG8KeW91\nciBgY3J1c2guanNvbmAgY29uZmlnOgoKYGBganNvbgp7CiAgIiRzY2hlbWEi\nOiAiaHR0cHM6Ly9jaGFybS5sYW5kL2NydXNoLmpzb24iLAogICJvcHRpb25z\nIjogewogICAgImRpc2FibGVfcHJvdmlkZXJfYXV0b191cGRhdGUiOiB0cnVl\nCiAgfQp9CmBgYAoKT3Igc2V0IHRoZSBgQ1JVU0hfRElTQUJMRV9QUk9WSURF\nUl9BVVRPX1VQREFURWAgZW52aXJvbm1lbnQgdmFyaWFibGU6CgpgYGBiYXNo\nCmV4cG9ydCBDUlVTSF9ESVNBQkxFX1BST1ZJREVSX0FVVE9fVVBEQVRFPTEK\nYGBgCgojIyMgTWFudWFsbHkgdXBkYXRpbmcgcHJvdmlkZXJzCgpNYW51YWxs\neSB1cGRhdGluZyBwcm92aWRlcnMgaXMgcG9zc2libGUgd2l0aCB0aGUgYGNy\ndXNoIHVwZGF0ZS1wcm92aWRlcnNgCmNvbW1hbmQ6CgpgYGBiYXNoCiMgVXBk\nYXRlIHByb3ZpZGVycyByZW1vdGVseSBmcm9tIENhdHdhbGsuCmNydXNoIHVw\nZGF0ZS1wcm92aWRlcnMKCiMgVXBkYXRlIHByb3ZpZGVycyBmcm9tIGEgY3Vz\ndG9tIENhdHdhbGsgYmFzZSBVUkwuCmNydXNoIHVwZGF0ZS1wcm92aWRlcnMg\naHR0cHM6Ly9leGFtcGxlLmNvbS8KCiMgVXBkYXRlIHByb3ZpZGVycyBmcm9t\nIGEgbG9jYWwgZmlsZS4KY3J1c2ggdXBkYXRlLXByb3ZpZGVycyAvcGF0aC90\nby9sb2NhbC1wcm92aWRlcnMuanNvbgoKIyBSZXNldCBwcm92aWRlcnMgdG8g\ndGhlIGVtYmVkZGVkIHZlcnNpb24sIGVtYmVkZGVkIGF0IGNydXNoIGF0IGJ1\naWxkIHRpbWUuCmNydXNoIHVwZGF0ZS1wcm92aWRlcnMgZW1iZWRkZWQKCiMg\nRm9yIG1vcmUgaW5mbzoKY3J1c2ggdXBkYXRlLXByb3ZpZGVycyAtLWhlbHAK\nYGBgCgojIyBNZXRyaWNzCgpDcnVzaCByZWNvcmRzIHBzZXVkb255bW91cyB1\nc2FnZSBtZXRyaWNzICh0aWVkIHRvIGEgZGV2aWNlLXNwZWNpZmljIGhhc2gp\nLAp3aGljaCBtYWludGFpbmVycyByZWx5IG9uIHRvIGluZm9ybSBkZXZlbG9w\nbWVudCBhbmQgc3VwcG9ydCBwcmlvcml0aWVzLiBUaGUKbWV0cmljcyBpbmNs\ndWRlIHNvbGVseSB1c2FnZSBtZXRhZGF0YTsgcHJvbXB0cyBhbmQgcmVzcG9u\nc2VzIGFyZSBORVZFUgpjb2xsZWN0ZWQuCgpEZXRhaWxzIG9uIGV4YWN0bHkg\nd2hhdOKAmXMgY29sbGVjdGVkIGFyZSBpbiB0aGUgc291cmNlIGNvZGUgKFto\nZXJlXShodHRwczovL2dpdGh1Yi5jb20vY2hhcm1icmFjZWxldC9jcnVzaC90\ncmVlL21haW4vaW50ZXJuYWwvZXZlbnQpCmFuZCBbaGVyZV0oaHR0cHM6Ly9n\naXRodWIuY29tL2NoYXJtYnJhY2VsZXQvY3J1c2gvYmxvYi9tYWluL2ludGVy\nbmFsL2xsbS9hZ2VudC9ldmVudC5nbykpLgoKWW91IGNhbiBvcHQgb3V0IG9m\nIG1ldHJpY3MgY29sbGVjdGlvbiBhdCBhbnkgdGltZSBieSBzZXR0aW5nIHRo\nZSBlbnZpcm9ubWVudAp2YXJpYWJsZSBieSBzZXR0aW5nIHRoZSBmb2xsb3dp\nbmcgaW4geW91ciBlbnZpcm9ubWVudDoKCmBgYGJhc2gKZXhwb3J0IENSVVNI\nX0RJU0FCTEVfTUVUUklDUz0xCmBgYAoKT3IgYnkgc2V0dGluZyB0aGUgZm9s\nbG93aW5nIGluIHlvdXIgY29uZmlnOgoKYGBganNvbgp7CiAgIm9wdGlvbnMi\nOiB7CiAgICAiZGlzYWJsZV9tZXRyaWNzIjogdHJ1ZQogIH0KfQpgYGAKCkNy\ndXNoIGFsc28gcmVzcGVjdHMgdGhlIFtgRE9fTk9UX1RSQUNLYF0oaHR0cHM6\nLy9kb25vdHRyYWNrLnNoLykgY29udmVudGlvbgp3aGljaCBjYW4gYmUgZW5h\nYmxlZCB2aWEgYGV4cG9ydCBET19OT1RfVFJBQ0s9MWAuCgojIyBRJkEKCiMj\nIyBXaHkgaXMgY2xpcGJvYXJkIGNvcHkgYW5kIHBhc3RlIG5vdCB3b3JraW5n\nPwoKSW5zdGFsbGluZyBhbiBleHRyYSB0b29sIG1pZ2h0IGJlIG5lZWRlZCBv\nbiBVbml4LWxpa2UgZW52aXJvbm1lbnRzLgoKfCBFbnZpcm9ubWVudCAgICAg\nICAgIHwgVG9vbCAgICAgICAgICAgICAgICAgICAgIHwKfCAtLS0tLS0tLS0t\nLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIHwKfCBXaW5k\nb3dzICAgICAgICAgICAgIHwgTmF0aXZlIHN1cHBvcnQgICAgICAgICAgIHwK\nfCBtYWNPUyAgICAgICAgICAgICAgIHwgTmF0aXZlIHN1cHBvcnQgICAgICAg\nICAgIHwKfCBMaW51eC9CU0QgKyBXYXlsYW5kIHwgYHdsLWNvcHlgIGFuZCBg\nd2wtcGFzdGVgIHwKfCBMaW51eC9CU0QgKyBYMTEgICAgIHwgYHhjbGlwYCBv\nciBgeHNlbGAgICAgICAgIHwKCiMjIENvbnRyaWJ1dGluZwoKU2VlIHRoZSBb\nY29udHJpYnV0aW5nIGd1aWRlXShodHRwczovL2dpdGh1Yi5jb20vY2hhcm1i\ncmFjZWxldC9jcnVzaD90YWI9Y29udHJpYnV0aW5nLW92LWZpbGUjY29udHJp\nYnV0aW5nKS4KCiMjIFdoYXRjaGEgdGhpbms/CgpXZeKAmWQgbG92ZSB0byBo\nZWFyIHlvdXIgdGhvdWdodHMgb24gdGhpcyBwcm9qZWN0LiBOZWVkIGhlbHA/\nIFdlIGdvdGNodS4gWW91IGNhbiBmaW5kIHVzIG9uOgoKLSBbVHdpdHRlcl0o\naHR0cHM6Ly90d2l0dGVyLmNvbS9jaGFybWNsaSkKLSBbU2xhY2tdW3NsYWNr\nXQotIFtEaXNjb3JkXVtkaXNjb3JkXQotIFtUaGUgRmVkaXZlcnNlXShodHRw\nczovL21hc3RvZG9uLnNvY2lhbC9AY2hhcm1jbGkpCi0gW0JsdWVza3ldKGh0\ndHBzOi8vYnNreS5hcHAvcHJvZmlsZS9jaGFybS5sYW5kKQoKW3NsYWNrXTog\naHR0cHM6Ly9jaGFybS5sYW5kL3NsYWNrCltkaXNjb3JkXTogaHR0cHM6Ly9j\naGFybS5sYW5kL2Rpc2NvcmQKCiMjIExpY2Vuc2UKCltGU0wtMS4xLU1JVF0o\naHR0cHM6Ly9naXRodWIuY29tL2NoYXJtYnJhY2VsZXQvY3J1c2gvcmF3L21h\naW4vTElDRU5TRS5tZCkKCi0tLQoKUGFydCBvZiBbQ2hhcm1dKGh0dHBzOi8v\nY2hhcm0ubGFuZCkuCgo8YSBocmVmPSJodHRwczovL2NoYXJtLmxhbmQvIj48\naW1nIGFsdD0iVGhlIENoYXJtIGxvZ28iIHdpZHRoPSI0MDAiIHNyYz0iaHR0\ncHM6Ly9zdHVmZi5jaGFybS5zaC9jaGFybS1iYW5uZXItc29mdHkuanBnIiAv\nPjwvYT4KCjwhLS1wcmV0dGllci1pZ25vcmUtLT4KQ2hhcm3ng63niLHlvIDm\nupAg4oCiIENoYXJtIGxvdmVzIG9wZW4gc291cmNlCg==\n","encoding":"base64","_links":{"self":"https://api.github.com/repos/charmbracelet/crush/contents/README.md?ref=main","git":"https://api.github.com/repos/charmbracelet/crush/git/blobs/2c2559282624fbc7732b3ca7687f624e434c0065","html":"https://github.com/charmbracelet/crush/blob/main/README.md"}}