From owner-svn-src-head@freebsd.org Thu Mar 16 17:46:40 2017 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1D80FD0F9D3; Thu, 16 Mar 2017 17:46:40 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail109.syd.optusnet.com.au (mail109.syd.optusnet.com.au [211.29.132.80]) by mx1.freebsd.org (Postfix) with ESMTP id 92E42192D; Thu, 16 Mar 2017 17:46:39 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c122-106-153-191.carlnfd1.nsw.optusnet.com.au [122.106.153.191]) by mail109.syd.optusnet.com.au (Postfix) with ESMTPS id 4FA26D61F06; Fri, 17 Mar 2017 04:46:36 +1100 (AEDT) Date: Fri, 17 Mar 2017 04:46:35 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Bruce Evans cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r315418 - in head/sys/teken: . libteken In-Reply-To: <201703161640.v2GGes8N033822@repo.freebsd.org> Message-ID: <20170317040832.N26977@besplex.bde.org> References: <201703161640.v2GGes8N033822@repo.freebsd.org> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-884451554-1489686395=:26977" X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=KeqiiUQD c=1 sm=1 tr=0 a=Tj3pCpwHnMupdyZSltBt7Q==:117 a=Tj3pCpwHnMupdyZSltBt7Q==:17 a=nlC_4_pT8q9DhB4Ho9EA:9 a=F-3Qla34dP4qacPy338A:9 a=CjuIK1q_8ugA:10 a=wm9pWYYYZ7nb34CoUz0A:9 a=ukFY2jYFVQwU3x9OMZcA:9 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Mar 2017 17:46:40 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-884451554-1489686395=:26977 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed On Thu, 16 Mar 2017, Bruce Evans wrote: > Log: > Add teken_256to16() to convert xterm-256 256-color codes to xterm 16-color > codes. This will be used to fix bright colors. > > Improve teken_256to8(). Use a lookup table instead of calculations. The > ... A shell script for printing some text color maps is attached. Also a sloppier one for printing some CSI sequences. The first one can easily be translated to xterm sequences. I used syscons F and G sequences to print bright colors with sc and vt since pure xterm bright colors are too broken to display themselves without bold hacks. The F and G sequences generate bold hacks in the kernel, and further complications are needed to turn these off to test if bright colors are fixed. Real xterm doesn't fake bold using brightness, so bold hacks on dark characters don't work for it. The first one needs the user to load a cp437 font for syscons and a unicode font for vt. The script doesn't load a font since it is too hard to restore or reset fonts. Similarly for colors. Run the first one on a kernel without this commit to see the old color map. It looked just wrong (unstructured) before I found a good tabular format to print it. I then wrote "improved" maps based on expanding the 2x2x2 and 3x3x3 maps. These were too simple. Some of the comments/printfs are out of date and still refer to this expansion. Bruce --0-884451554-1489686395=:26977 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=sc-vt-colormap Content-Transfer-Encoding: BASE64 Content-ID: <20170317044635.X26977@besplex.bde.org> Content-Description: Content-Disposition: attachment; filename=sc-vt-colormap IyEvYmluL3NoDQoNCiMgUHJpbnQgc29tZSBjb2xvciBtYXBzIGZvciBzeXNj b25zIGFuZCB2dC4NCg0KVlRZPSQoc3lzY3RsIC1uIGtlcm4udnR5IDI+L2Rl di9udWxsKQ0KDQojIFhYWCB1c2VyIG11c3QgbG9hZCBmb250IHdpdGggYmxv Y2sgY2hhciB3aGVyZSB3ZSBleHBlY3QgaXQuDQpjYXNlICRWVFkgaW4NCnZ0 KQ0KCSMgWFhYIGJyb2tlbiBpbiB0ZXh0IG1vZGUgKG5vIGV4dGVuc2lvbiBm cm9tIDh0aCBiaXQgdG8gOXRoKS4NCglCTD0iXDM0MlwyMjZcMjEwIjs7CSMg QmxvY2sgY2hhciAweDI1ODggaW4gVVRGOCBmb3IgdW5pY29kZSBmb250Lg0K KikNCglCTD0iXDMzMyI7OwkJIyBCbG9jayBjaGFyIDB4REIgaW4gQVNDSUkg Zm9yIGNwNDM3IGZvbnQuDQplc2FjDQpDU0k9IlwwMzNbIg0KDQprKCkgew0K CXByaW50ZiAiJENTST0wRiRCTCRCTCINCn0NCmIoKSB7DQoJcHJpbnRmICIk Q1NJPTFGJEJMJEJMIg0KfQ0KZygpIHsNCglwcmludGYgIiRDU0k9MkYkQkwk QkwiDQp9DQpjKCkgew0KCXByaW50ZiAiJENTST0zRiRCTCRCTCINCn0NCnIo KSB7DQoJcHJpbnRmICIkQ1NJPTRGJEJMJEJMIg0KfQ0KbSgpIHsNCglwcmlu dGYgIiRDU0k9NUYkQkwkQkwiDQp9DQp5KCkgew0KCXByaW50ZiAiJENTST02 RiRCTCRCTCINCn0NCncoKSB7DQoJcHJpbnRmICIkQ1NJPTdGJEJMJEJMIg0K fQ0KSygpIHsNCglwcmludGYgIiRDU0k9OEYkQkwkQkwiDQp9DQpCKCkgew0K CXByaW50ZiAiJENTST05RiRCTCRCTCINCn0NCkcoKSB7DQoJcHJpbnRmICIk Q1NJPTEwRiRCTCRCTCINCn0NCkMoKSB7DQoJcHJpbnRmICIkQ1NJPTExRiRC TCRCTCINCn0NClIoKSB7DQoJcHJpbnRmICIkQ1NJPTEyRiRCTCRCTCINCn0N Ck0oKSB7DQoJcHJpbnRmICIkQ1NJPTEzRiRCTCRCTCINCn0NClkoKSB7DQoJ cHJpbnRmICIkQ1NJPTE0RiRCTCRCTCINCn0NClcoKSB7DQoJcHJpbnRmICIk Q1NJPTE1RiRCTCRCTCINCn0NCm1heWJlX2NscmVvbCgpIHsNCgljYXNlICRW VFkgaW4NCgl2dCkNCgkJOzsJCSMgTm90IG5lZWRlZCwgYW5kIGhhcm1mdWws IGlmIG5vIGF1dG9tYXJnLg0KCSopDQoJCXByaW50ZiAiJHtDU0l9MEsiOzsN Cgllc2FjDQp9DQpkZW1vX2RlZmNvbG9ycygpIHsNCglwcmludGYgIiR7Q1NJ fTBtIg0KCXByaW50ZiAiJENTST0xNUYkQ1NJPTBHIg0KfQ0KbmwoKSB7DQoJ ZGVtb19kZWZjb2xvcnMNCgltYXliZV9jbHJlb2wJCSMgUGFydC4gZml4IGZv ciBtZXNzIG1hZGUgYnkgYXV0b21hcmcrc2Nyb2xsLg0KCXByaW50ZiAiXG4i DQp9DQpkZWZjb2xvcnMoKSB7DQoJcHJpbnRmICIke0NTSX0wbSINCglwcmlu dGYgIiRDU0k9N0YkQ1NJPTBHIgkjIFBhcnRpYWwgZml4IGZvciBicm9rZW4g JHtDU0l9MHguDQoJcHJpbnRmICIke0NTSX0weCINCn0NCnVuaGFja2JvbGQo KSB7DQoJIyBXZSBzZXQgYnJpZ2h0IHcgaW4gZGVtb19kZWZlZmNvbG9ycyBm b3IgcHJpbnRpbmcgbWVzc2FnZXMNCgkjIGFuZCBiZyBjb2xvciB0ZXN0cywg YnV0IHRoZSB0ZWtlbiBib2xkIGhhY2sgZm9yIHRoaXMgc2V0dGluZw0KCSMg bGVha3MgaW50byBmb2xsb3dpbmcgZmcgY29sb3Igc2V0dGluZ3MuICBVbmRv IHRoZSBoYWNrLCBpZiBhbnkuDQoJcHJpbnRmICIke0NTSX0yMm0iDQp9DQoN CmRlbW9fZGVmY29sb3JzDQoNCnByaW50ZiAiMngyeDIgY21hcCwgdmVydGlj YWw6XG4iDQprOyBiOyBubA0KZzsgYzsgbmwNCnI7IG07IG5sDQp5OyB3OyBu bA0KcHJpbnRmICIyeDJ4MiBjbWFwLCBob3Jpem9udGFsOlxuIg0KazsgYjsg ZzsgYzsgcjsgbTsgeTsgdzsgbmwNCg0KcHJpbnRmICJcbjN4M3gzIGNtYXAs IHZlcnRpY2FsOlxuIg0KazsgYjsgQjsgbmwNCmc7IGM7IEM7IG5sDQpHOyBD OyBDOyBubA0KcjsgbTsgTTsgbmwNCnk7IHc7IEI7IG5sDQpZOyBHOyBDOyBu bA0KUjsgTTsgTTsgbmwNClk7IFI7IE07IG5sDQpZOyBZOyBXOyBubA0KcHJp bnRmICIzeDN4MyBjbWFwLCBob3Jpem9udGFsOlxuIg0KazsgYjsgQjsgZzsg YzsgQzsgRzsgQzsgQzsgbmwNCnI7IG07IE07IHk7IHc7IEI7IFk7IEc7IEM7 IG5sDQpSOyBNOyBNOyBZOyBSOyBNOyBZOyBZOyBXOyBubA0KDQpubDIoKSB7 DQoJIyBubA0KfQ0KDQpFWElUKCkgew0KCWRlZmNvbG9ycw0KCXByaW50ZiAn XDAzM1t4XDAzM1syOzZ4XDAzM1sxOzB4XDAzM1s2Ozd4XDAzM1s1OzR4Jw0K CXByaW50ZiAnXDAzM1s9M0ZcMDMzWz0wRycNCglleGl0DQp9DQoNCnByaW50 ZiAiXG44LWNvbG9yIDZ4Nng2ICsgMjQgY21hcCBmcm9tIGV4cGFuc2lvbiBv ZiAyeDJ4MiArIDJncmV5LCBzdHJ1Y3R1cmVkOlxuIg0KIyAwMDAgMDAyIDAw MyAwMDQgMDA1IDAwNg0KazsgICAgYjsgIGI7ICBiOyAgYjsgIGINCm5sMg0K IyAwMjAgMDIyIDAyMyAwMjQgMDI1IDAyNg0KZzsgICAgYzsgIGM7ICBiOyAg YjsgIGINCm5sMg0KIyAwMzAgMDMyIDAzMyAwMzQgMDM1IDAzNg0KZzsgICAg YzsgIGM7ICBjOyAgYjsgIGINCm5sMg0KIyAwNDAgMDQyIDA0MyAwNDQgMDQ1 IDA0Ng0KZzsgICAgZzsgIGM7ICBjOyAgYzsgIGINCm5sMg0KIyAwNTAgMDUy IDA1MyAwNTQgMDU1IDA1Ng0KZzsgICAgZzsgIGc7ICBjOyAgYzsgIGMNCm5s Mg0KIyAwNjAgMDYyIDA2MyAwNjQgMDY1IDA2Ng0KZzsgICAgZzsgIGc7ICBn OyAgYzsgIGMNCm5sDQoNCiMgMjAwIDIwMiAyMDMgMjA0IDIwNSAyMDYNCnI7 ICAgIG07ICBtOyAgYjsgIGI7ICBiDQpubDINCiMgMjIwIDIyMiAyMjMgMjI0 IDIyNSAyMjYNCnk7ICAgIGs7ICBiOyAgYjsgIGI7ICBiDQpubDINCiMgMjMw IDIzMiAyMzMgMjM0IDIzNSAyMzYNCnk7ICAgIGc7ICBjOyAgYzsgIGI7ICBi DQpubDINCiMgMjQwIDI0MiAyNDMgMjQ0IDI0NSAyNDYNCmc7ICAgIGc7ICBj OyAgYzsgIGM7ICBiDQpubDINCiMgMjUwIDI1MiAyNTMgMjU0IDI1NSAyNTYN Cmc7ICAgIGc7ICBnOyAgYzsgIGM7ICBjDQpubDINCiMgMjYwIDI2MiAyNjMg MjY0IDI2NSAyNjYNCmc7ICAgIGc7ICBnOyAgZzsgIGM7ICBjDQpubA0KDQoj IDMwMCAzMDIgMzAzIDMwNCAzMDUgMzA2DQpyOyAgICBtOyAgbTsgIG07ICBi OyAgYg0KbmwyDQojIDMyMCAzMjIgMzIzIDMyNCAzMjUgMzI2DQp5OyAgICBy OyAgbTsgIG07ICBiOyAgYg0KbmwyDQojIDMzMCAzMzIgMzMzIDMzNCAzMzUg MzM2DQp5OyAgICB5OyAgdzsgIGI7ICBiOyAgYg0KbmwyDQojIDM0MCAzNDIg MzQzIDM0NCAzNDUgMzQ2DQp5OyAgICB5OyAgZzsgIGM7ICBjOyAgYg0Kbmwy DQojIDM1MCAzNTIgMzUzIDM1NCAzNTUgMzU2DQpnOyAgICBnOyAgZzsgIGM7 ICBjOyAgYw0KbmwyDQojIDM2MCAzNjIgMzYzIDM2NCAzNjUgMzY2DQpnOyAg ICBnOyAgZzsgIGc7ICBjOyAgYw0KbmwNCg0KIyA0MDAgNDAyIDQwMyA0MDQg NDA1IDQwNg0KcjsgICAgcjsgIG07ICBtOyAgbTsgIGINCm5sMg0KIyA0MjAg NDIyIDQyMyA0MjQgNDI1IDQyNg0KcjsgICAgcjsgIG07ICBtOyAgbTsgIGIN Cm5sMg0KIyA0MzAgNDMyIDQzMyA0MzQgNDM1IDQzNg0KeTsgICAgeTsgIHI7 ICBtOyAgbTsgIGINCm5sMg0KIyA0NDAgNDQyIDQ0MyA0NDQgNDQ1IDQ0Ng0K eTsgICAgeTsgIHk7ICB3OyAgYjsgIGINCm5sMg0KIyA0NTAgNDUyIDQ1MyA0 NTQgNDU1IDQ1Ng0KeTsgICAgeTsgIHk7ICBnOyAgYzsgIGMNCm5sMg0KIyA0 NjAgNDYyIDQ2MyA0NjQgNDY1IDQ2Ng0KZzsgICAgZzsgIGc7ICBnOyAgYzsg IGMNCm5sDQoNCiMgNTAwIDUwMiA1MDMgNTA0IDUwNSA1MDYNCnI7ICAgIHI7 ICByOyAgbTsgIG07ICBtDQpubDINCiMgNTIwIDUyMiA1MjMgNTI0IDUyNSA1 MjYNCnI7ICAgIHI7ICByOyAgbTsgIG07ICBtDQpubDINCiMgNTMwIDUzMiA1 MzMgNTM0IDUzNSA1MzYNCnI7ICAgIHI7ICByOyAgbTsgIG07ICBtDQpubDIN CiMgNTQwIDU0MiA1NDMgNTQ0IDU0NSA1NDYNCnk7ICAgIHk7ICB5OyAgcjsg IG07ICBtDQpubDINCiMgNTUwIDU1MiA1NTMgNTU0IDU1NSA1NTYNCnk7ICAg IHk7ICB5OyAgeTsgIHc7ICBiDQpubDINCiMgNTYwIDU2MiA1NjMgNTY0IDU2 NSA1NjYNCnk7ICAgIHk7ICB5OyAgeTsgIGc7ICBjDQpubA0KDQojIDYwMCA2 MDIgNjAzIDYwNCA2MDUgNjA2DQpyOyAgICByOyAgcjsgIHI7ICBtOyAgbQ0K bmwyDQojIDYyMCA2MjIgNjIzIDYyNCA2MjUgNjI2DQpyOyAgICByOyAgcjsg IHI7ICBtOyAgbQ0KbmwyDQojIDYzMCA2MzIgNjMzIDYzNCA2MzUgNjM2DQpy OyAgICByOyAgcjsgIHI7ICBtOyAgbQ0KbmwyDQojIDY0MCA2NDIgNjQzIDY0 NCA2NDUgNjQ2DQpyOyAgICByOyAgcjsgIHI7ICBtOyAgbQ0KbmwyDQojIDY1 MCA2NTIgNjUzIDY1NCA2NTUgNjU2DQp5OyAgICB5OyAgeTsgIHk7ICByOyAg bQ0KbmwyDQojIDY2MCA2NjIgNjYzIDY2NCA2NjUgNjY2DQp5OyAgICB5OyAg eTsgIHk7ICB5OyAgdw0KbmwNCg0Kazsgazsgazsgazsgazsgaw0Kazsgazsg azsgazsgazsgaw0Kdzsgdzsgdzsgdzsgdzsgdw0Kdzsgdzsgdzsgdzsgdzsg dw0KbmwNCg0KcHJpbnRmICJcbjE2LWNvbG9yIDZ4Nng2ICsgMjQgY21hcCBm cm9tIGV4cGFuc2lvbiBvZiAzeDN4MyArIDRncmV5LCBzdHJ1Y3R1cmVkOlxu Ig0KIyAwMDAgMDAyIDAwMyAwMDQgMDA1IDAwNg0KazsgICAgYjsgIGI7ICBi OyAgYjsgIGINCm5sMg0KIyAwMjAgMDIyIDAyMyAwMjQgMDI1IDAyNg0KZzsg ICAgYzsgIGM7ICBiOyAgYjsgIGINCm5sMg0KIyAwMzAgMDMyIDAzMyAwMzQg MDM1IDAzNg0KZzsgICAgYzsgIGM7ICBjOyAgYjsgIGINCm5sMg0KIyAwNDAg MDQyIDA0MyAwNDQgMDQ1IDA0Ng0KZzsgICAgZzsgIGM7ICBjOyAgYzsgIGIN Cm5sMg0KIyAwNTAgMDUyIDA1MyAwNTQgMDU1IDA1Ng0KZzsgICAgZzsgIGc7 ICBjOyAgYzsgIGMNCm5sMg0KIyAwNjAgMDYyIDA2MyAwNjQgMDY1IDA2Ng0K ZzsgICAgZzsgIGc7ICBnOyAgYzsgIGMNCm5sDQoNCiMgMjAwIDIwMiAyMDMg MjA0IDIwNSAyMDYNCnI7ICAgIG07ICBtOyAgYjsgIGI7ICBiDQpubDINCiMg MjIwIDIyMiAyMjMgMjI0IDIyNSAyMjYNCnk7ICAgIEs7ICBiOyAgYjsgIEI7 ICBCDQpubDINCiMgMjMwIDIzMiAyMzMgMjM0IDIzNSAyMzYNCnk7ICAgIGc7 ICBjOyAgYzsgIEI7ICBCDQpubDINCiMgMjQwIDI0MiAyNDMgMjQ0IDI0NSAy NDYNCmc7ICAgIGc7ICBjOyAgYzsgIEM7ICBCDQpubDINCiMgMjUwIDI1MiAy NTMgMjU0IDI1NSAyNTYNCmc7ICAgIEc7ICBHOyAgQzsgIEM7ICBDDQpubDIN CiMgMjYwIDI2MiAyNjMgMjY0IDI2NSAyNjYNCmc7ICAgIEc7ICBHOyAgRzsg IEM7ICBDDQpubA0KDQojIDMwMCAzMDIgMzAzIDMwNCAzMDUgMzA2DQpyOyAg ICBtOyAgbTsgIG07ICBiOyAgYg0KbmwyDQojIDMyMCAzMjIgMzIzIDMyNCAz MjUgMzI2DQp5OyAgICByOyAgbTsgIG07ICBCOyAgQg0KbmwyDQojIDMzMCAz MzIgMzMzIDMzNCAzMzUgMzM2DQp5OyAgICB5OyAgdzsgIEI7ICBCOyAgQg0K bmwyDQojIDM0MCAzNDIgMzQzIDM0NCAzNDUgMzQ2DQp5OyAgICB5OyAgRzsg IEM7ICBDOyAgQg0KbmwyDQojIDM1MCAzNTIgMzUzIDM1NCAzNTUgMzU2DQpn OyAgICBHOyAgRzsgIEM7ICBDOyAgQw0KbmwyDQojIDM2MCAzNjIgMzYzIDM2 NCAzNjUgMzY2DQpnOyAgICBHOyAgRzsgIEc7ICBDOyAgQw0KbmwNCg0KIyA0 MDAgNDAyIDQwMyA0MDQgNDA1IDQwNg0KcjsgICAgcjsgIG07ICBtOyAgbTsg IGINCm5sMg0KIyA0MjAgNDIyIDQyMyA0MjQgNDI1IDQyNg0KcjsgICAgcjsg IG07ICBtOyAgTTsgIEINCm5sMg0KIyA0MzAgNDMyIDQzMyA0MzQgNDM1IDQz Ng0KeTsgICAgeTsgIFI7ICBNOyAgTTsgIEINCm5sMg0KIyA0NDAgNDQyIDQ0 MyA0NDQgNDQ1IDQ0Ng0KeTsgICAgeTsgIFk7ICBXOyAgQjsgIEINCm5sMg0K IyA0NTAgNDUyIDQ1MyA0NTQgNDU1IDQ1Ng0KeTsgICAgWTsgIFk7ICBHOyAg QzsgIEMNCm5sMg0KIyA0NjAgNDYyIDQ2MyA0NjQgNDY1IDQ2Ng0KZzsgICAg RzsgIEc7ICBHOyAgQzsgIEMNCm5sDQoNCiMgNTAwIDUwMiA1MDMgNTA0IDUw NSA1MDYNCnI7ICAgIHI7ICByOyAgbTsgIG07ICBtDQpubDINCiMgNTIwIDUy MiA1MjMgNTI0IDUyNSA1MjYNCnI7ICAgIFI7ICBSOyAgTTsgIE07ICBNDQpu bDINCiMgNTMwIDUzMiA1MzMgNTM0IDUzNSA1MzYNCnI7ICAgIFI7ICBSOyAg TTsgIE07ICBNDQpubDINCiMgNTQwIDU0MiA1NDMgNTQ0IDU0NSA1NDYNCnk7 ICAgIFk7ICBZOyAgUjsgIE07ICBNDQpubDINCiMgNTUwIDU1MiA1NTMgNTU0 IDU1NSA1NTYNCnk7ICAgIFk7ICBZOyAgWTsgIFc7ICBCDQpubDINCiMgNTYw IDU2MiA1NjMgNTY0IDU2NSA1NjYNCnk7ICAgIFk7ICBZOyAgWTsgIEc7ICBD DQpubA0KDQojIDYwMCA2MDIgNjAzIDYwNCA2MDUgNjA2DQpyOyAgICByOyAg cjsgIHI7ICBtOyAgbQ0KbmwyDQojIDYyMCA2MjIgNjIzIDYyNCA2MjUgNjI2 DQpyOyAgICBSOyAgUjsgIFI7ICBNOyAgTQ0KbmwyDQojIDYzMCA2MzIgNjMz IDYzNCA2MzUgNjM2DQpyOyAgICBSOyAgUjsgIFI7ICBNOyAgTQ0KbmwyDQoj IDY0MCA2NDIgNjQzIDY0NCA2NDUgNjQ2DQpyOyAgICBSOyAgUjsgIFI7ICBN OyAgTQ0KbmwyDQojIDY1MCA2NTIgNjUzIDY1NCA2NTUgNjU2DQp5OyAgICBZ OyAgWTsgIFk7ICBSOyAgTQ0KbmwyDQojIDY2MCA2NjIgNjYzIDY2NCA2NjUg NjY2DQp5OyAgICBZOyAgWTsgIFk7ICBZOyAgVw0KbmwNCg0Kazsgazsgazsg azsgazsgaw0KSzsgSzsgSzsgSzsgSzsgSw0Kdzsgdzsgdzsgdzsgdzsgdw0K VzsgVzsgVzsgVzsgVzsgVw0KbmwNCg0KcHJpbnRmICJcbmFjdHVhbCA2eDZ4 NiArIDI0IHh0ZXJtMjU2LWlzaCBmZyBjbWFwLCBzdHJ1Y3R1cmVkOlxuIg0K dW5oYWNrYm9sZA0KZm9yIGkgaW4gJChqb3QgMjQwIDE2KQ0KZG8NCglwcmlu dGYgIiR7Q1NJfTM4OzU7JWRtJEJMJEJMIiAkaQ0KCSMgaWYgdGVzdCAkKCgo JGkgLSAxNikgJSA2KSkgPSA1OyB0aGVuIG5sOyB1bmhhY2tib2xkOyBmaQ0K CWlmIHRlc3QgJCgoKCRpIC0gMTYpICUgMzYpKSA9IDM1OyB0aGVuIG5sOyB1 bmhhY2tib2xkOyBmaQ0KZG9uZQ0KbmwNCg0KIyBFWElUDQoNCnByaW50ZiAi XG5hY3R1YWwgNng2eDYgKyAyNCB4dGVybTI1Ni1pc2ggYmcgY21hcCwgc3Ry dWN0dXJlZDpcbiINCmZvciBpIGluICQoam90IDI0MCAxNikNCmRvDQoJcHJp bnRmICIke0NTSX00ODs1OyVkbUFBIiAkaQ0KCWlmIHRlc3QgJCgoKCRpIC0g MTYpICUgMzYpKSA9IDM1OyB0aGVuIG5sOyBmaQ0KZG9uZQ0KbmwNCg0KcHJp bnRmICJcbmFjdHVhbCBhbnNpIGR1bGwgZmcgY29sb3JzLCBsaW5lYXI6XG4i DQp1bmhhY2tib2xkDQpmb3IgaSBpbiAkKGpvdCA4IDMwKQ0KZG8NCglwcmlu dGYgIiRDU0klZG0kQkwkQkwiICRpDQpkb25lDQpubA0KDQpwcmludGYgIlxu YWN0dWFsIGFuc2kgZHVsbCBiZyBjb2xvcnMsIGxpbmVhcjpcbiINCmZvciBp IGluICQoam90IDggNDApDQpkbw0KCXByaW50ZiAiJENTSSVkbUFBIiAkaQ0K ZG9uZQ0KbmwNCg0KcHJpbnRmICJcbmFjdHVhbCB4dGVybS1pc2ggMTYtY29s b3IgZmcgY29sb3JzLCBsaW5lYXI6XG4iDQp1bmhhY2tib2xkDQpmb3IgaSBp biAkKGpvdCA4IDkwKQ0KZG8NCglwcmludGYgIiRDU0klZG0kQkwkQkwiICRp DQpkb25lDQpubA0KDQpwcmludGYgIlxuYWN0dWFsIHh0ZXJtLWlzaCAxNi1j b2xvciBiZyBjb2xvcnMsIGxpbmVhcjpcbiINCmZvciBpIGluICQoam90IDgg MTAwKQ0KZG8NCglwcmludGYgIiRDU0klZG1BQSIgJGkNCmRvbmUNCm5sDQoN CmRlZmNvbG9ycw0K --0-884451554-1489686395=:26977 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=sc-vt-CSI Content-Transfer-Encoding: BASE64 Content-ID: <20170317044635.Q26977@besplex.bde.org> Content-Description: Content-Disposition: attachment; filename=sc-vt-CSI cHJpbnRmICdcMDMzW20nDQpwcmludGYgJ1wwMzNbeCcNCmlmIGZhbHNlOyB0 aGVuDQpmb3IgaSBpbiAkKGpvdCAxNiAwKQ0KZG8NCglwcmludGYgJ1wwMzNb MjslZHgnICRpDQoJbHMgL3Zhci9kYg0KCWVjaG8gJGkNCglyZWFkIHgNCmRv bmUNCnByaW50ZiAnXDAzM1syOzZ4JyAgICAgICMgNiA9IGN5YW4gZmcNCmZv ciBpIGluICQoam90IDE2IDApDQpkbw0KCXByaW50ZiAnXDAzM1sxOyVkeCcg JGkNCglscyAvdmFyL2RiDQoJZWNobyAkaQ0KCXJlYWQgeA0KZG9uZQ0KcHJp bnRmICdcMDMzWzE7MHgnICAgICAgIyAwID0gYmxhY2sgYmcNCmZvciBpIGlu ICQoam90IDE2IDApDQpkbw0KCXByaW50ZiAnXDAzM1s2OyVkeCcgJGkNCgls cyAvdmFyL2RiDQoJZWNobyAkaQ0KCXJlYWQgeA0KZG9uZQ0KcHJpbnRmICdc MDMzWzY7N3gnICAgICAgIyA3ID0gd2hpdGUgcmV2IGZnDQpmb3IgaSBpbiAk KGpvdCAxNiAwKQ0KZG8NCglwcmludGYgJ1wwMzNbNTslZHgnICRpDQoJbHMg L3Zhci9kYg0KCWVjaG8gJGkNCglyZWFkIHgNCmRvbmUNCnByaW50ZiAnXDAz M1s1OzR4JyAgICAgICMgNCA9IGJsdWUgcmV2IGJnDQpmaQ0KIA0KcHJpbnRm ICdcMDMzWzI7NngnICAgICAjIDYgPSBjeWFuIGZnDQpwcmludGYgJ1wwMzNb MTsweCcgICAgICAjIDAgPSBibGFjayBiZw0KcHJpbnRmICdcMDMzWzY7N3gn ICAgICAgIyA3ID0gd2hpdGUgcmV2IGZnDQpwcmludGYgJ1wwMzNbNTs0eCcg ICAgICAjIDQgPSBibHVlIHJldiBiZw0KIA0KcHJpbnRmICdcMDMzWzdtJw0K Zm9yIGkgaW4gJChqb3QgMjU2IDApDQpkbw0KCSBwcmludGYgJ1wwMzNbbScN CgkjIHByaW50ZiAnXDAzM1s3bScNCglwcmludGYgJ1wwMzNbJWRtJyAkaQ0K CWxzIC92YXIvZGINCgllY2hvICRpDQoJcmVhZCB4DQpkb25lDQo= --0-884451554-1489686395=:26977--