texlive[49331] Master: Refinements tlshell.tcl; better error handling

commits+siepo at tug.org commits+siepo at tug.org
Thu Dec 6 21:11:38 CET 2018


Revision: 49331
          http://tug.org/svn/texlive?view=revision&revision=49331
Author:   siepo
Date:     2018-12-06 21:11:38 +0100 (Thu, 06 Dec 2018)
Log Message:
-----------
Refinements tlshell.tcl; better error handling tlshell.exe

Modified Paths:
--------------
    trunk/Master/bin/win32/tlshell.exe
    trunk/Master/source/tlshell_UAC.zip
    trunk/Master/texmf-dist/scripts/tlshell/tlshell.tcl
    trunk/Master/tlpkg/tltcl/tltcl.tcl

Modified: trunk/Master/bin/win32/tlshell.exe
===================================================================
--- trunk/Master/bin/win32/tlshell.exe	2018-12-06 02:12:43 UTC (rev 49330)
+++ trunk/Master/bin/win32/tlshell.exe	2018-12-06 20:11:38 UTC (rev 49331)
@@ -1,30 +1,28 @@
 MZ\x90       \xFF\xFF  \xB8       @                                   \x80   \xBA \xB4	\xCD!\xB8L\xCD!This program cannot be run in DOS mode.
 
-$       PE  L             \xE0 

     J     \xD0      0    @                     \xB0     bh   @                             `  \xFC   \x90  `                                                  \x80                     \x98a                             .text   
                        ` P`.data   ,    0      $              @ 0\xC0.rdata  @	   @   
-   &              @ 0 at .bss    \xEC   P                      \x80 `\xC0.idata  \xFC   `      0              @ 0\xC0.CRT    4    p      8              @ 0\xC0.tls         \x80      :              @ 0\xC0.rsrc   `   \x90      <              @ 0\xC0                                                                                                                                                                                                                                                                                                                                        \xF3Í\xB4&    \x8D\xBC'    \x83\xEC
1\xC0f\x81=  @ MZ\xC7\x8CS@    \xC7\x88S@    \xC7\x84S@    \xC7<P@    th\xA3P@ \xA1\x98S@ \x85\xC0tJ\xC7$   \xE8&
  \xC7$\xFF\xFF\xFF\xFF\xE8"  \x8B\xA8S@ \xA3\xDCS@ \xA3\xE0S@ \xA1,b@ \x89\xE8\xD6  \x83= 0@ tm1\xC0\x83\xC4
Í\xB4&    \xC7$   \xE8\xDC
  \xEB\xB4f\x90\x8B< @ \x81\xBA  @ PE  \x8D\x8A  @ u\x80\xB7Qf\x81\xFA
t?f\x81\xFA
\x85j\xFF\xFF\xFF\x83\xB9\x84   \x86]\xFF\xFF\xFF\x8B\x91\xF8   1\xC0\x85\xD2\x95\xC0\xE9K\xFF\xFF\xFF\x8Dv \xC7$ !@ \xE8\xE4  1\xC0\x83\xC4
Ãyt\x86,\xFF\xFF\xFF\x8B\x89\xE8   1\xC0\x85\xC9\x95\xC0\xE9\xFF\xFF\xFFf\x90\x83\xEC,\xA1\x80S@ \xC7D$ P@ \xC7D$P@ \xC7D$P@ \xC7$P@ \xA3 P@ \xA18P@ \x89D$
\xE8
  \x83\xC4,\xC3f\x90U1\xC0\xB9   \x89\xE5WV\x8DU\xA4S\x89׃\xEC|\xF3\xAB\xB80   \xE8\xCF  )čD$\x83\xE0\xF0\xC7 \xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@
\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@
\xCC\xCC\xCC̃\xE4\xF0\x8B5\x98S@ \x85\xF6\x85\xA5  d\xA1   1\xF6\x8BX\x8B=\xF0a@ \xEB9\xC3\x84,  \xC7$\xE8  \xFF׃\xEC\x89\xF0\xF0\xB1
\xE4S@ \x85\xC0uޡ\xE8S@ 1ۃ\xF8\x84  \xA1\xE8S@ \x85\xC0\x84d  \xC7P@    \xA1\xE8S@ \x83\xF8\x84
-  \x85\xDB\x84(  \xA1\xF0C@ \x85\xC0t
\xC7D$    \xC7D$   \xC7$    \xFFЃ\xEC
\xE8\xC2  \xC7$\xC0%@ \xFF\xECa@ \x83\xEC\xA3\xACS@ \xC7$ @ \xE8
-  \xE8\xCC  \xA1\x84b@ \xC7\xD8S@   @ \x8B \x85\xC0tM1\xC9\xEB\x8Dv f\x85\xD2t$\x83\xE1t\xB9   \x83\xC0\xB7f\x83\xFA v\xE5\x89˃\xF3f\x83\xFA"D\xCB\xEB\xE6\x83\xEAf\x83\xFAw\x83\xC0\xB78\x8DW\xFFf\x83\xFAv\xF1\xA3\xD4S@ \x8B
\x98S@ \x85\xDBt\xF6E\xD0\xB8
-   fEE\xD4\xB7\xC0\xA3 0@ \xA1P@ \x89E\x90\x89Ǎ\x85   \x89E\x8C\x89$\xE8\xEE  \x85\xFF\x89E\x94\x8B
P@ \x8Eh  1\xFF\x89\xFE\x89\xF6\x8D\xBC'    \x8B\xB3f\x838 \x84\xB2   \xBA   \x83\xC2f\x83|P\xFE u\xF5\x8D<\x89<$\xE8\xA8  \x8BM\x94\x89\xB1\x8B
\xB3\x83\xC6\x89|$\x89$\x89L$\xE8\x84  9u\x90u\xB7\x8BE\x8C\x83\xE8\x8B}\x94\xC7    \x89=P@ \xE8L
-  \xA1 b@ \x8BP@ \x89\xA1P@ \x89D$\xA1P@ \x89D$\xA1P@ \x89$\xE8P
+$       PE  L             \xE0 

 
   H     \xD0      0    @                     \xB0     \xA8}   @                             `  \xFC   \x90  `                                                  \x80                     \x98a                             .text   \xF4
      
                 ` P`.data   ,    0      "              @ 0\xC0.rdata  `	   @   
+   $              @ 0 at .bss    \xEC   P                      \x80 `\xC0.idata  \xFC   `      .              @ 0\xC0.CRT    4    p      6              @ 0\xC0.tls         \x80      8              @ 0\xC0.rsrc   `   \x90      :              @ 0\xC0                                                                                                                                                                                                                                                                                                                                        \xF3Í\xB4&    \x8D\xBC'    \x83\xEC
1\xC0f\x81=  @ MZ\xC7\x8CS@    \xC7\x88S@    \xC7\x84S@    \xC7<P@    th\xA3P@ \xA1\x98S@ \x85\xC0tJ\xC7$   \xE8
  \xC7$\xFF\xFF\xFF\xFF\xE8  \x8B\xA8S@ \xA3\xDCS@ \xA3\xE0S@ \xA1,b@ \x89\xE8\xC6  \x83= 0@ tm1\xC0\x83\xC4
Í\xB4&    \xC7$   \xE8\xCC
  \xEB\xB4f\x90\x8B< @ \x81\xBA  @ PE  \x8D\x8A  @ u\x80\xB7Qf\x81\xFA
t?f\x81\xFA
\x85j\xFF\xFF\xFF\x83\xB9\x84   \x86]\xFF\xFF\xFF\x8B\x91\xF8   1\xC0\x85\xD2\x95\xC0\xE9K\xFF\xFF\xFF\x8Dv \xC7$\xF0 @ \xE8\xD4  1\xC0\x83\xC4
Ãyt\x86,\xFF\xFF\xFF\x8B\x89\xE8   1\xC0\x85\xC9\x95\xC0\xE9\xFF\xFF\xFFf\x90\x83\xEC,\xA1\x80S@ \xC7D$ P@ \xC7D$P@ \xC7D$P@ \xC7$P@ \xA3 P@ \xA18P@ \x89D$
\xE8
  \x83\xC4,\xC3f\x90U1\xC0\xB9   \x89\xE5WV\x8DU\xA4S\x89׃\xEC|\xF3\xAB\xB80   \xE8\xBF  )čD$\x83\xE0\xF0\xC7 \xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@
\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@\xCC\xCC\xCC\xCC\xC7@
\xCC\xCC\xCC̃\xE4\xF0\x8B5\x98S@ \x85\xF6\x85\xA5  d\xA1   1\xF6\x8BX\x8B=\xF0a@ \xEB9\xC3\x84,  \xC7$\xE8  \xFF׃\xEC\x89\xF0\xF0\xB1
\xE4S@ \x85\xC0uޡ\xE8S@ 1ۃ\xF8\x84  \xA1\xE8S@ \x85\xC0\x84d  \xC7P@    \xA1\xE8S@ \x83\xF8\x84
+  \x85\xDB\x84(  \xA1D@ \x85\xC0t
\xC7D$    \xC7D$   \xC7$    \xFFЃ\xEC
\xE8\xB2  \xC7$\xB0%@ \xFF\xECa@ \x83\xEC\xA3\xACS@ \xC7$ @ \xE8\xF1	  \xE8\xBC  \xA1\x84b@ \xC7\xD8S@   @ \x8B \x85\xC0tM1\xC9\xEB\x8Dv f\x85\xD2t$\x83\xE1t\xB9   \x83\xC0\xB7f\x83\xFA v\xE5\x89˃\xF3f\x83\xFA"D\xCB\xEB\xE6\x83\xEAf\x83\xFAw\x83\xC0\xB78\x8DW\xFFf\x83\xFAv\xF1\xA3\xD4S@ \x8B
\x98S@ \x85\xDBt\xF6E\xD0\xB8
+   fEE\xD4\xB7\xC0\xA3 0@ \xA1P@ \x89E\x90\x89Ǎ\x85   \x89E\x8C\x89$\xE8\xDE  \x85\xFF\x89E\x94\x8B
P@ \x8Eh  1\xFF\x89\xFE\x89\xF6\x8D\xBC'    \x8B\xB3f\x838 \x84\xB2   \xBA   \x83\xC2f\x83|P\xFE u\xF5\x8D<\x89<$\xE8\x98  \x8BM\x94\x89\xB1\x8B
\xB3\x83\xC6\x89|$\x89$\x89L$\xE8t  9u\x90u\xB7\x8BE\x8C\x83\xE8\x8B}\x94\xC7    \x89=P@ \xE8<
+  \xA1 b@ \x8BP@ \x89\xA1P@ \x89D$\xA1P@ \x89D$\xA1P@ \x89$\xE8@
   \x8B
 P@ \xA3
P@ \x85\xC9\x84\xBF   \x8BP@ \x85\xD2u
-\xE8^  \xA1
P@ \x8De\xF4[^_]ÿ   \xE9W\xFF\xFF\xFF\xA1\xE8S@ \xBB   \x83\xF8\x85\xEB\xFD\xFF\xFF\xC7$   \xE80  \xA1\xE8S@ \x83\xF8\x85\xF6\xFD\xFF\xFF\xC7D$p@ \xC7$ p@ \xE8\xFE  \x85\xDB\xC7\xE8S@    \x85\xD8\xFD\xFF\xFF\x87
\xE4S@ \xE9\xCD\xFD\xFF\xFF\x89$\xFF\xD4a@ \x83\xEC\xE9J\xFD\xFF\xFF\xC7\xE8S@    \xC7D$p@ \xC7$
p@ \xE8\xB2  \xE9\x83\xFD\xFF\xFF1\xC0\xE9\xED\xFE\xFF\xFF\x89$\xE8\x8E  \x8D\xB6    \x83\xEC
\xC7\x98S@    \xE8\x9E	  \x83\xC4
\xE9\x86\xFC\xFF\xFF\x8D\xB6    \x83\xEC
\xC7\x98S@     \xE8~	  \x83\xC4
\xE9f\xFC\xFF\xFF\x90\x90\x90\x90\x90\x90U\x89\xE5\x83\xEC\xC7$0@ \xE8N  \xC9Í\xB6    \x8D\xBF    U\x89\xE5]Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90U\x89\xE5\x83\xEC\x8BE\xC7D$
  \xC7D$ @@ \xC7$    \x89D$\xFF\xACb@ \x83\xEC\xC7$   \xFF\xB0b@ P\xC9\xC3U\x89\xE5\x83\xEC\x8BE
\x89D$\x8BE\x89$\xE8\xCB  \x85\xC0u
-\xC7$   \xFF\xB8a@ \xC9\xC3U\x89\xE5WVS\x83\xEC
\x8B}\xC7D$@@ \xC7$@@ \xE8x  \x85\xC0u
\x8BE\xC7     \xEBi\x89ƋE
\x89|$\x894$\x89D$\xE8$  \x894$\x89\xC3\xE8Z  \x85\xDBxF\x8DC\xC7D$   \x89$\xE8p\xFF\xFF\xFF\x89ƋE
\x89|$
\x89\$\x894$\x89D$\xFF\x80b@ 9\xC3t\x85\xF6t\x9D\x894$\xE8  듋E\x890\xEB\x83\xCB\xFF\x83\xC4
\x89\xD8[^_]\xC3U\x89\xE5\x83\xEC\x8DE\x89D$\x8BE
\x89D$\x8BE\x89$\xE8<\xFF\xFF\xFF\x85\xC0y
\xC7$@@ \xE8\xC4\xFE\xFF\xFF\xC9\xC3U\x89\xE5WVS\x81\xEC\xFC   \xA1,P@ \xC7D$h@@ \x89D$\x8D\x85
\xFF\xFF\xFF\x89$\xE8\xA4\xFF\xFF\xFF\x8B\x85
\xFF\xFF\xFF\xC7D$\x98@@ \x89$\xFF\x88b@ \x85\xC0tR\x89Ƌ\x85
\xFF\xFF\xFF\xBB\xC8   \x89$\xE8_  \x8D\x95 \xFF\xFF\xFF1\xC0\xB92   \x89׉\x95\xFF\xFF\xFF\xF3\xAB\x89$\x89t$\xC7D$\xC8   \xE8D  \x85\xC0\x8B\x95\xFF\xFF\xFFu\x894$\xE8:  \xC6
P@  \xEBa\xC7D$   \x89T$\xC7$\x9C@@ \xE8\xE9  \x85\xC0u6\xBA
P@ \x8A\x8C/\xFF\xFF\xFF\x88\x88
P@ \x83\xE90\x80\xF9	v
-\xB9   1\xC0\x89\xD7\xF3\xAA\xEB@\x83\xF8u\xD8\xC6 P@  \xEBK\x85a\xFF\xFF\xFF\x894$\xE8\xD0  \x81\xC4\xFC   [^_]\xC3U1\xC0\xB9   \x89\xE5WVS\x8D}\xA8\xBE\xAC@@ \x83\xEC|\x80=
P@!
   \xF3\xA5t]\x8D]\xA8\x83\xC9\xFF\x89\xDF\xF2\xAE\xC7D$   \xC7D$
P@ \x89\xCA\xF7ҍD\xFB\x89$\xE8@  \x8DE\xA4\xC7D$
   \xC7D$    \x89\$\xC7$  \x80\x89D$\xFF\xA0a@ \x83\xEC\x85\xC0\x94\xC0\xB6\xC0\x8De\xF4[^_]\xC3U\x89\xE5S\x83\xEC4\xC7E\xEC    \xC7E\xF4   \xFF\xBCa@ \x8DU\xEC\xC7D$   \x89$\x89T$\xFF\x9Ca@ \x83\xEC
\x85\xC0u1\xDB\xEBE\x8DE\xF4\xC7D$
   \xC7D$   \x89D$\x8DE\xF0\x89D$\x8BE\xEC\x89$\xFF\x98a@ \x83\xEC\x85\xC0tˋE\xEC\x8B]\xF0\x85\xC0t
-\x89$\xFF\xA8a@ P\x89؋]\xFC\xC9\xC3U\x89\xE5WS\x8D]\xB4\x81\xEC\x90   \xA1$P@ \xC7D$\xEC@@ \x89D$
\xA1(P@ \x89D$\x8DE\xA0\x89$\xE8}\xFD\xFF\xFF\x8DU\xB81\xC0\xB9   \xC7E\xB4D   \x89׍U\xA4\xF3\xAB\x89׹   \xC7E\xE0   \xF3\xAB\x8BE\xA0\x89T$$\x89\$ \xC7D$
    \xC7D$    \xC7D$    \xC7D$   \xC7D$
    \xC7D$    \x89D$\xC7$    \xFF\xACa@ \x83\xEC(\x85\xC0u\xC7$A@ \xE8\xE9\xFB\xFF\xFF\xEB\xC7$    \xFF\xB0b@ P\x8De\xF8[_]\xC3U\x89\xE5\x83\xECX\xA1$P@ \xC7D$4A@ \x89D$\x8DE\xB8\x89$\xE8\xBD\xFC\xFF\xFF\xA1(P@ \xC7E\xBC<   \xC7E\xC0 \x80  \xC7E\xC4    \xC7E\xC8 at A@ \xC7E\xD4    \x89E̋E\xB8\xC7E\xD8    \xC7E\xDC    \x89EЍE\xBC\x89$\xFF\xA4b@ \x85\xC0Ru\xC7$LA@ \xE8T\xFB\xFF\xFF\xEB\xC7$    \xFF\xB0b@ P\xC9\xC3U\x89\xE5VS\x83\xEC0\xC7D$   \xC7$ \x80  \xE8c\xFB\xFF\xFF\xC7D$ \x80  \x89E\xF4\x89D$\xC7$    \xFF\xD0a@ \x83\xEC
\x85\xC0u\xC7$\x8EA@ \xE8\xF7\xFA\xFF\xFF\xEB
-\xFF\xCCa@ \x85\xC0u\xE8\xBB   \x8BE\xF4\xC7D$\   \x89$\xE8\x9B  \x85\xC0\x89\xC6u
\xC7$\xC8A@ \xE8\xC1\xFA\xFF\xFFKf\xC7  uӋE\xF4\xC7D$B@ \xC7$,P@ \x89D$\xE8\xAB\xFB\xFF\xFF\x8BE\xF4\x85\xC0t\x89$\xE8\x87  \xC7E\xF4    \xA1,P@ \xC7D$
B@ \xC7$(P@ \x89D$\xE8x\xFB\xFF\xFF\xA1(P@ \x8B
\xC8a@ \x89$\xFF\xD3 at Vu
\xC7$TB@ \xE8K\xFA\xFF\xFF\xA1,P@ \xC7D$\x82B@ \xC7$$P@ \x89D$\xE8;\xFB\xFF\xFF\xA1$P@ \x89$\xFF\xD3 at Qu8\xA1$P@ \x85\xC0t\x89$\xE8  \xC7$P@     \xA1,P@ \xC7D$\xD8B@ \xC7$$P@ \x89D$\xE8\xF5\xFA\xFF\xFF\xA1$P@ \x89$\xFF\xD3 at Ru
\xC7$.C@ \xE8\xCE\xF9\xFF\xFF\xE8\xFB\xFF\xFF\x80=
P@  u/\xC7D$
   \xC7D$ZC@ \xC7D$fC@ \xC7$    \xFF\xACb@ \xB8   \x83\xEC\xEBN\xA1$P@ \xC7D$\xD0C@ \x89D$\xA1(P@ \x89D$
\xA1,P@ \x89D$\x8DE\xF4\x89$\xE8p\xFA\xFF\xFF\xE8\xA9\xFB\xFF\xFF\x85\xC0u\xE8\xB2\xFC\xFF\xFF\xEB\xE8!\xFC\xFF\xFF\x85\xC0u\xF0\xE8s\xFD\xFF\xFF1\xC0\x8De\xF8[^]\xC2 \x90\x90\xFF%\x9Cb@ \x90\x90\xFF%\x98b@ \x90\x90\xFF%|b@ \x90\x90\xFF%xb@ \x90\x90\xFF%lb@ \x90\x90\xFF%hb@ \x90\x90\xFF%`b@ \x90\x90\xFF%Xb@ \x90\x90\xFF%Tb@ \x90\x90\xFF%Pb@ \x90\x90\xFF%Lb@ \x90\x90\xFF%Hb@ \x90\x90\xFF%4b@ \x90\x90\xFF%(b@ \x90\x90\xFF%$b@ \x90\x90\xFF%
b@ \x90\x90\xFF%b@ \x90\x90\xA10P@ Ív \x8D\xBC'    \x8BD$\x870P@ Ð\x90\x90\x90\x90S\x83\xEC(\xA1\xE0S@ \x89$\xE8\xBF  \x83\xF8\xFF\x89D$\x84\x82   \xC7$   \xE8\xEA  \xA1\xE0S@ \x89$\xE8\x99  \x89D$\xA1\xDCS@ \x89$\xE8\x88  \x89D$
\x8DD$
\x89D$\x8DD$\x89D$\x8BD$0\x89$\xE8\xBC  \x89ËD$\x89$\xE8j  \xA3\xE0S@ \x8BD$
\x89$\xE8Y  \xC7$   \xA3\xDCS@ \xE8t  \x83\xC4(\x89\xD8[Ð\x8BD$0\x89$\xFF@b@ \x83\xC4(\x89É\xD8[Ív \x8D\xBC'    \x83\xEC
\x8BD$ \x89$\xE81\xFF\xFF\xFF\x85\xC0\x94\xC0\x83\xC4
\xB6\xC0\xF7\xD8Ð\x90\x90\xA1
0@ \x8B \x85\xC0t\x83\xEC
f\x90\xFFС
0@ \x8DP\x8B@\x89
0@ \x85\xC0u\xE9\x83\xC4
\xF3Ít& S\x83\xEC\x8B
\xF0-@ \x83\xFB\xFFt!\x85\xDBt
\xFF\x9D\xF0-@ \x83\xEBu\xF4\xC7$\x90
@ \xE8\x85\xFF\xFF\xFF\x83\xC4[\xC31\xDB\xEB\x89ÍC\x8B\x85\xF0-@ \x85\xD2u\xF0\xEBɍv \x8D\xBC'    \x!
 A14P@ \x85\xC0t\xF3Ð\x8Dt& \xC74P@    딐\x90\x90\x90\xFF%b@ \x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x83\xEC
\xA1 0@ \xC7D$    \x89D$
\xA1\xD4S@ \x89D$\xA1\xD8S@ \x89$\xE8\x94\xFB\xFF\xFF\x83\xEC\x83\xC4
Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90UWVS\x83\xEC,\xA1$0@ \xC7D$    \xC7D$    =N\xE6@\xBBt\xF7У(0@ \x83\xC4,[^_]ÍD$\x89$\xFF\xD8a@ \x83\xEC\x8B\$3\$\xFF\xC0a@ \x89\xC5\xFF\xC4a@ \x89\xC7\xFF\xDCa@ \x89ƍD$\x89$\xFF\xE8a@ \x83\xEC\x8BD$1\xD83D$
1\xE81\xF81\xF0=N\xE6@\xBBt\x89\xC2\xF7ң$0@ \x89(0@ \x83\xC4,[^_]ú\xB0\xBFD\xB8O\xE6@\xBB\xEB\xE1\x8Dt& U\x89\xE5\x83\xEC(\xC7 S@ 	 \xC0\x8BE\x8DU\xC7$S@    \xC7$    \x89Q@ \xA3\xF8P@ \xA3,S@ \x8BE\xA3\xECP@ \xA1$0@ \x89E\xF0\xA1(0@ \x89E\xF4\xFF\xECa@ \x83\xEC\xC7$\xE8C@ \xFF\xFCa@ \x83\xEC\xFF\xBCa@ \xC7D$	 \xC0\x89$\xFF\xF4a@ \x83\xEC\xE8\xDD
+\xE8N  \xA1
P@ \x8De\xF4[^_]ÿ   \xE9W\xFF\xFF\xFF\xA1\xE8S@ \xBB   \x83\xF8\x85\xEB\xFD\xFF\xFF\xC7$   \xE8   \xA1\xE8S@ \x83\xF8\x85\xF6\xFD\xFF\xFF\xC7D$p@ \xC7$ p@ \xE8\xEE  \x85\xDB\xC7\xE8S@    \x85\xD8\xFD\xFF\xFF\x87
\xE4S@ \xE9\xCD\xFD\xFF\xFF\x89$\xFF\xD4a@ \x83\xEC\xE9J\xFD\xFF\xFF\xC7\xE8S@    \xC7D$p@ \xC7$
p@ \xE8\xA2  \xE9\x83\xFD\xFF\xFF1\xC0\xE9\xED\xFE\xFF\xFF\x89$\xE8~  \x8D\xB6    \x83\xEC
\xC7\x98S@    \xE8\x8E	  \x83\xC4
\xE9\x86\xFC\xFF\xFF\x8D\xB6    \x83\xEC
\xC7\x98S@     \xE8n	  \x83\xC4
\xE9f\xFC\xFF\xFF\x90\x90\x90\x90\x90\x90U\x89\xE5\x83\xEC\xC7$0@ \xE8>  \xC9Í\xB6    \x8D\xBF    U\x89\xE5]Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90U\x89\xE5S\x83\xEC\x8BE\x8B]
\xC7D$
  \xC7D$ @@ \xC7$    \x89D$\xFF\xACb@ \x83\xEC\x89
$\xFF\xB0b@ P\x89
$\xFF\xB8a@ U\x89\xE5\x83\xEC\x8BE
\x89D$\x8BE\x89$\xE8\xB4  \x85\xC0u
+\xC7$   \xFF\xB8a@ \xC9\xC3U\x89\xE5WVS\x83\xEC
\x8B}\xC7D$@@ \xC7$@@ \xE8a  \x85\xC0u
\x8BE\xC7     \xEBi\x89ƋE
\x89|$\x894$\x89D$\xE8
+  \x894$\x89\xC3\xE8C  \x85\xDBxF\x8DC\xC7D$   \x89$\xE8p\xFF\xFF\xFF\x89ƋE
\x89|$
\x89\$\x894$\x89D$\xFF\x80b@ 9\x!
 C3t\x85\xF6t\x9D\x894$\xE8\xEA  듋E\x890\xEB\x83\xCB\xFF\x83\xC4
\x89\xD8[^_]\xC3U\x89\xE5\x83\xEC\x8DE\x89D$\x8BE
\x89D$\x8BE\x89$\xE8<\xFF\xFF\xFF\x85\xC0y\xC7D$   \xC7$@@ \xE8\xB5\xFE\xFF\xFF\xC9\xC3U\x89\xE5WVS\x81\xEC\xFC   \xA1,P@ \xC7D$h@@ \x89D$\x8D\x85
\xFF\xFF\xFF\x89$\xE8\x9C\xFF\xFF\xFF\x8B\x85
\xFF\xFF\xFF\xC7D$\x98@@ \x89$\xFF\x88b@ \x85\xC0tR\x89Ƌ\x85
\xFF\xFF\xFF\xBB\xC8   \x89$\xE8@  \x8D\x95 \xFF\xFF\xFF1\xC0\xB92   \x89׉\x95\xFF\xFF\xFF\xF3\xAB\x89$\x89t$\xC7D$\xC8   \xE8%  \x85\xC0\x8B\x95\xFF\xFF\xFFu\x894$\xE8  \xC6
P@  \xEBa\xC7D$   \x89T$\xC7$\x9C@@ \xE8\xCA  \x85\xC0u6\xBA
P@ \x8A\x8C/\xFF\xFF\xFF\x88\x88
P@ \x83\xE90\x80\xF9	v
+\xB9   1\xC0\x89\xD7\xF3\xAA\xEB@\x83\xF8u\xD8\xC6 P@  \xEBK\x85a\xFF\xFF\xFF\x894$\xE8\xB1  \x81\xC4\xFC   [^_]\xC3U1\xC0\xB9   \x89\xE5WVS\x8D}\xA8\xBE\xAC@@ \x83\xEC|\x80=
P@  \xF3\xA5t]\x8D]\xA8\x83\xC9\xFF\x89\xDF\xF2\xAE\xC7D$   \xC7D$
P@ \x89\xCA\xF7ҍD\xFB\x89$\xE8!  \x8DE\xA4\xC7D$
   \xC7D$    \x89\$\xC7$  \x80\x89D$\xFF\xA0a@ \x83\xEC\x85\xC0\x94\xC0\xB6\xC0\x8De\xF4[^_]\xC3U\x89\xE5S\x83\xEC4\xC7E\xEC    \xC7E\xF4   \xFF\xBCa@ \x8DU\xEC\xC7D$   \x89$\x89T$\xFF\x9Ca@ \x83\xEC
\x85\xC0u1\xDB\xEBE\x8DE\xF4\xC7D$
   \xC7D$   \x89D$\x8DE\xF0\x89D$\x8BE\xEC\x89$\xFF\x98a@ \x83\xEC\x85\xC0tˋE\xEC\x8B]\xF0\x85\xC0t
+\x89$\xFF\xA8a@ P\x89؋]\xFC\xC9\xC3U\x89\xE5WS\x8D]\xB4\x81\xEC\x90   \xA1$P@ \xC7D$\xEC@@ \x89D$
\xA1(P@ \x89D$\x8DE\xA0\x89$\xE8u\xFD\xFF\xFF\x8DU\xB81\xC0\xB9   \xC7E\xB4D   \x89׍U\xA4\xF3\xAB\x89׹   \xC7E\xE0   \xF3\xAB\x8BE\xA0\x89T$$\x89\$ \xC7D$
    \xC7D$    \xC7D$    \xC7D$   \xC7D$
    \xC7D$    \x89D$\xC7$    \xFF\xACa@ \x83\xEC(\x85\xC0u\xC7D$   \xC7$A@ \xE8\xD2\xFB\xFF\xFF\xC7$    \xFF\xB0b@ P\x8De\xF8[_]\xC3U\x89\xE5\x83\xECX\xA1$P@ \xC7D$4A@ \x89D$\x8DE\xB8\x89$\xE8\xAF\xFC\xFF\xFF\xA1(P@ \xC7E\xBC<   \xC7E\xC0 \x80  \xC7E\xC4    \xC7E\xC8 at A@ \xC7E\xD4    \x89E̋E\xB8\xC7E\xD8    \xC7E\xDC    \x89EЍE\xBC\x89$\xFF\xA4b@ \x85\xC0Ru\xC7D$   \xC7$LA@ \xE87\xFB\xFF\xFF\xC7$    \xFF\xB0b@ P\xC9\xC3U\x89\xE5VS\x83\xEC\xC7D$   \xC7$ \x80  \xE8O\xFB\xFF\xFF\xC7D$ \x80  \x89ÉD$\xC7$    \xFF\xD0a@ \x83\xEC
\x85\xC0u\xC7D$   \xC7$\x8EA@ \xEB2\xFF\xCCa@ \x85\xC0u\xE5\xBE   \xC7D$\   \x89
$\xE8q  \x85\xC0u\xC7D$    \xC7$\xC8A@ \xE8\xA1\xFA\xFF\xFFNf\xC7   uЉ\$\xC7D$NB@ \xC7$,P@ \xE8\x95\xFB\xFF\xFF\x85\xDBt\x89
$\xE8]  \xA1,P@ \xC7D$VB@ \xC7$(P@ \x89D$\xE8l\xFB\xFF\xFF\xA1(P@ \x8B
\xC8a@ \x89$\xFF\xD3 at Vu\xC7D$    \xC7$\x8CB@ 덡,P@ \xC7D$\xBAB@ \xC7$$P@ \x89D$\xE8*\xFB\xFF\xFF\xA1$P@ \x89$\xFF\xD3 at Qu8\xA1$P@ \x85\xC0t\x89$\xE8\xDF   \xC7$P@     \xA1,P@ \xC7D$C@ \xC7$$P@ \x89D$\xE8\xE4\xFA\xFF\xFF\xA1$P@ \x89$\xFF\xD3 at Ru\xC7D$    \xC7$fC@ \xE9\xFF\xFF\xFF\xE8\xF6\xFA\xFF\xFF\x80=
P@  u/\xC7D$
   \xC7D$\x92C@ \xC7D$\x9EC@ \xC7$    \xFF\xACb@ \xB8   \x83\xEC\xEB \xE8\xC6\xFB\xFF\xFF\x85\xC0u\xE8\xCF\xFC\xFF\xFF\xEB\xE8>\xFC\xFF\xFF\x85\xC0u\xF0\xE8\x96\xFD\xFF\xFF1\xC0\x8De\xF8[^]\xC2 \xFF%\x9Cb@ \x90\x90\xFF%\x98b@ \x90\x90\xFF%|b@ \x90\x90\xFF%xb@ \x90\x90\xFF%lb@ \x90\x90\xFF%hb@ \x90\x90\xFF%`b@ \x90\x90\xFF%Xb@ \x90\x90\xFF%Tb@ \x90\x90\xFF%Pb@ \x90\x90\xFF%Lb@ \x90\x90\xFF%Hb@ \x90\x90\xFF%4b@ \x90\x90\xFF%(b@ \x90\x90\xFF%$b@ \x90\x90\xFF%
b@ \x90\x90\xFF%b@ \x90\x90\xA10P@ Ív \x8D\xBC'    \x8BD$\x87!
 0P@ Ð\x90\x90\x90\x90S\x83\xEC(\xA1\xE0S@ \x89$\xE8\xBF  \x83\xF8\xFF\x89D$\x84\x82   \xC7$   \xE8\xEA  \xA1\xE0S@ \x89$\xE8\x99  \x89D$\xA1\xDCS@ \x89$\xE8\x88  \x89D$
\x8DD$
\x89D$\x8DD$\x89D$\x8BD$0\x89$\xE8\xBC  \x89ËD$\x89$\xE8j  \xA3\xE0S@ \x8BD$
\x89$\xE8Y  \xC7$   \xA3\xDCS@ \xE8t  \x83\xC4(\x89\xD8[Ð\x8BD$0\x89$\xFF@b@ \x83\xC4(\x89É\xD8[Ív \x8D\xBC'    \x83\xEC
\x8BD$ \x89$\xE81\xFF\xFF\xFF\x85\xC0\x94\xC0\x83\xC4
\xB6\xC0\xF7\xD8Ð\x90\x90\xA1
0@ \x8B \x85\xC0t\x83\xEC
f\x90\xFFС
0@ \x8DP\x8B@\x89
0@ \x85\xC0u\xE9\x83\xC4
\xF3Ít& S\x83\xEC\x8B
\xE0-@ \x83\xFB\xFFt!\x85\xDBt
\xFF\x9D\xE0-@ \x83\xEBu\xF4\xC7$\x80
@ \xE8\x85\xFF\xFF\xFF\x83\xC4[\xC31\xDB\xEB\x89ÍC\x8B\x85\xE0-@ \x85\xD2u\xF0\xEBɍv \x8D\xBC'    \xA14P@ \x85\xC0t\xF3Ð\x8Dt& \xC74P@    딐\x90\x90\x90\xFF%b@ \x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x83\xEC
\xA1 0@ \xC7D$    \x89D$
\xA1\xD4S@ \x89D$\xA1\xD8S@ \x89$\xE8\xBF\xFB\xFF\xFF\x83\xEC\x83\xC4
Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90UWVS\x83\xEC,\xA1$0@ \xC7D$    \xC7D$    =N\xE6@\xBBt\xF7У(0@ \x83\xC4,[^_]ÍD$\x89$\xFF\xD8a@ \x83\xEC\x8B\$3\$\xFF\xC0a@ \x89\xC5\xFF\xC4a@ \x89\xC7\xFF\xDCa@ \x89ƍD$\x89$\xFF\xE8a@ \x83\xEC\x8BD$1\xD83D$
1\xE81\xF81\xF0=N\xE6@\xBBt\x89\xC2\xF7ң$0@ \x89(0@ \x83\xC4,[^_]ú\xB0\xBFD\xB8O\xE6@\xBB\xEB\xE1\x8Dt& U\x89\xE5\x83\xEC(\xC7 S@ 	 \xC0\x8BE\x8DU\xC7$S@    \xC7$    \x89Q@ \xA3\xF8P@ \xA3,S@ \x8BE\xA3\xECP@ \xA1$0@ \x89E\xF0\xA1(0@ \x89E\xF4\xFF\xECa@ \x83\xEC\xC7$D@ \xFF\xFCa@ \x83\xEC\xFF\xBCa@ \xC7D$	 \xC0\x89$\xFF\xF4a@ \x83\xEC\xE8\xDD
   \x90\x90\x90\x90\x90\x90\x90\x90\x90\x83\xEC
\x8BD$$\x83\xF8t\x85\xC0t\xB8   \x83\xC4
\xC2
 \x90\x8Dt& \x8BT$(\x89D$\x8BD$ \x89T$\x89$\xE8	  \xB8   \x83\xC4
\xC2
 \x8D\xB6    \x8D\xBC'    VS\x83\xEC\x83=
0@ \x8BD$$t
-\xC7
0@    \x83\xF8t\x83\xF8t:\x83\xC4\xB8   [^\xC2
 \xBB0p@ \xBE0p@ 9\xDEt\xE5\x8B\x85\xC0t\xFFЃ\xC39\xDEu\xF1\x83\xC4\xB8   [^\xC2
 \x8Dv \x8BD$(\xC7D$   \x89D$\x8BD$ \x89$\xE8t  \xEB\xA8f\x901\xC0Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x83\xEC<\xA1\x94S@ \xDDD$H\xDDD$P\x85\xC0\xDDD$Xt)\xD9ʋT$@\xDD\$\xDD\$ \x89T$\x8BT$D\xDD\$(\x89T$\x8DT$\x89$\xFF\xD0\xEB\xDD\xD8\xDD\xD8\xDD؃\xC4<Ð\x8Dt& \x8BD$\xA3\x94S@ \xE9\xCE
  f\x90\x83\xEC<\xB9\xF4C@ \x8BD$@\x8B\x83\xEA\x83\xFAw\x8B
\x95E@ \xDD@\xDD\$ \xDD@\xDD\$\xDD@\xDD\$\x8B@\x89L$\xC7D$D@ \x89D$
\xA18b@ \x83\xC0@\x89$\xE8_
  1\xC0\x83\xC4<Ð\x90\x90\x90\x901\xC0Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\xDB\xE3Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x8BD$Ít& \x8D\xBC'    \x8BD$Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90S\x83\xEC\xA18b@ \xC7D$   \xC7D$   \x8D\$$\xC7$(E@ \x83\xC0@\x89D$
\xE8\xDC
  \x8BD$ \x89\$\x89D$\xA18b@ \x83\xC0@\x89$\xE8\xA0
  \xE8\xA3
  \xEB
+\xC7
0@    \x83\xF8t\x83\xF8t:\x83\xC4\xB8   [^\xC2
 \xBB0p@ \xBE0p@ 9\xDEt\xE5\x8B\x85\xC0t\xFFЃ\xC39\xDEu\xF1\x83\xC4\xB8   [^\xC2
 \x8Dv \x8BD$(\xC7D$   \x89D$\x8BD$ \x89$\xE8t  \xEB\xA8f\x901\xC0Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x83\xEC<\xA1\x94S@ \xDDD$H\xDDD$P\x85\xC0\xDDD$Xt)\xD9ʋT$@\xDD\$\xDD\$ \x89T$\x8BT$D\xDD\$(\x89T$\x8DT$\x89$\xFF\xD0\xEB\xDD\xD8\xDD\xD8\xDD؃\xC4<Ð\x8Dt& \x8BD$\xA3\x94S@ \xE9\xCE
  f\x90\x83\xEC<\xB9D@ \x8BD$@\x8B\x83\xEA\x83\xFAw\x8B
\x950E@ \xDD@\xDD\$ \xDD@\xDD\$\xDD@\xDD\$\x8B@\x89L$\xC7D$$D@ \x89D$
\xA18b@ \x83\xC0@\x89$\xE8_
  1\xC0\x83\xC4<Ð\x90\x90\x90\x901\xC0Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\xDB\xE3Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x8BD$Ít& \x8D\xBC'    \x8BD$Ð\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90S\x83\xEC\xA18b@ \xC7D$   \xC7D$   \x8D\$$\xC7$HE@ \x83\xC0@\x89D$
\xE8\xDC
  \x8BD$ \x89\$\x89D$\xA18b@ \x83\xC0@\x89$\xE8\xA0
  \xE8\xA3
  \xEB
 \x90\x90\x90\x90\x90\x90\x90\!
 x90\x90\x90\x90\x90\x90WVS\x83\xEC0\x8B5\xA0S@ \x85\xF6\x8E\xDF   \x8B=\xA4S@ 1ۍW
\x90\x8B
-9\xC1w\x8BzO9\xC8\x82\xB8   \x83\xC3\x83\xC29\xF3u\xE2\x89$\x89\xC6\xE8\xA8  \x85\xC0\x89\xC7\x84\xDE   \x8B5\xA4S@ \x8D
\x9B\xC1\xE3މF\xC7    \xE8\x92	  G
\x89F
\x8DD$\xC7D$
   \x89D$\xA1\xA4S@ \x8BD
\x89$\xFFb@ \x83\xEC
\x85\xC0ts\x8BD$(\x8DP\xC0\x83\xE2\xBFt<\x83\xE8\x83\xE0\xFBt4
\xA4S@ \x8BD$\x8BT$ \x89C\x89S\x89\$
\xC7D$@   \x89T$\x89$\xFF b@ \x83\xEC\x85\xC0t\x83\xA0S@ \x83\xC40[^_\xC31\xDB\xE9D\xFF\xFF\xFF\xFF\xCCa@ \xC7$\x98E@ \x89D$\xE8\x90\xFE\xFF\xFF\xA1\xA4S@ \x8BD
\x89D$\x8BG\xC7$dE@ \x89D$\xE8p\xFE\xFF\xFF\x89t$\xC7$DE@ \xE8`\xFE\xFF\xFFU\x89\xE5WVS\x83\xEC<\x8B
\x9CS@ \x85\xDBt
-\x8De\xF4[^_]Ð\x8Dt& \xC7\x9CS@    \xE8\xF1  \x8D\x80\x8D\x85
   \xC1\xE8\xC1\xE0\xE8\xDC	  \xC7\xA0S@     )čD$\x83\xE0\xF0\xA3\xA4S@ \xB8 at I@ - at I@ \x83\xF8~\xA8\x83\xF8
\x8E<  \x8B=@I@ \x85\xFF\x85\x8E   \x8B5DI@ \x85\xF6\x85\x80   \x8B
-HI@ \xBELI@ \x85\xC9\x84  \xBE at I@ \x8BF\x83\xF8\x85\xB3  \x83\xC6
\x81\xFE at I@ \x83P\xFF\xFF\xFF\x89]Ћ\xB6V\x8B~\x8D\x88  @ \x8B\x80  @ \x83\xFA\x8D\x9F  @ \x89E\xD4\x84\xE3   \x83\xFA \x84Z  \x83\xFA\x84"  \x89T$\xC7$\xF4E@ \xE8Q\xFD\xFF\xFF\x90\xBE at I@ \x81\xFE at I@ \x83\xF2\xFE\xFF\xFF\x89]ԋ~\x8B\x83\xC6\x8B\x9F  @ \x8D\x87  @ \xD3\xE8\x81\xFD\xFF\xFF\x81\xFE at I@ \x89\x9F  @ r׋]ԡ\xA0S@ \x85\xC0\x8D}\xE4\x8B5 b@ 
\xE9\xAC\xFE\xFF\xFF\x89\xF6\x8D\xBC'    \x83\xC3;
\xA0S@ \x8D\x94\xFE\xFF\xFF\x8B\xA4S@ \x8D\x9B\x8D\x82\x8B\x85\xD2t߉|$
\x89T$\x8BP\x89T$\x8B@\x89$\xFFփ\xEC\xEBÍv \xBE at I@ \x8B\x85\xD2\x85V\xFF\xFF\xFF\x8BF\x85\xC0\x84\xDE\xFE\xFF\xFF\xE9F\xFF\xFF\xFF\x90\xB7\x97  @ \x89\xD0
-  \xFF\xFFf\x83\xBF  @  HЋE\xD4)\xCAЉE\xE4\x89\xD8\xE8\xC6\xFC\xFF\xFF\xB7E\xE4f\x89\x87  @ \x83\xC6
\x81\xFE at I@ \x82\xB2\xFE\xFF\xFF\x8B]С\xA0S@ \xE94\xFF\xFF\xFF\xB6\x89ׁ\xCF \xFF\xFF\xFF\x80; H\xD7)\xCAЉE\xE4\x89\xD8\xE8\x80\xFC\xFF\xFF\xB6E\xE4\x88뽐\x8D\xB4&    \x8BE\xD4)\xC8\x89ljE\xE4\x89\xD8\xE8]\xFC\xFF\xFF\x89;랉D$\xC7$\xC0E@ \xE8\xE9\xFB\xFF\xFF\x90\x90\x90\x!
 90\x90\x90\x90\x90\x90S\x83\xEC\x8B\$ \x8B\x8B =\x91  \xC0wM=\x8D  \xC0\x83\xB2   =  \xC0\x85\xE7   \xC7D$    \xC7$
   \xE8\xA7  \x83\xF8\x84*  \x85\xC0t/\xC7$
   \xFFЃ\xC4\xB8\xFF\xFF\xFF\xFF[\xC2 \x90=\x94  \xC0t)=\x96  \xC0\x84\xA9   =\x93  \xC0tW\xA1\xACS@ \x85\xC0t=\x89\$ \x83\xC4[\xFF\xE0\x8Dt& \xC7D$    \xC7$   \xE8@  \x83\xF8\x84\xA4   \x85\xC0t\xC8\xC7$   \xFFи\xFF\xFF\xFF\xFF\x83\xC4[\xC2 \x8Dv \x8D\xBC'    \xC7D$    \xC7$   \xE8   \x83\xF8u\xC4\xC7D$   \xC7$   \xE8\xE7  \xE8\xAE\xFA\xFF\xFF\xB8\xFF\xFF\xFF\xFF붍\xB4&    =
  \xC0\x85^\xFF\xFF\xFF\xC7D$    \xC7$   \xE8\xB5  \x83\xF8t\\x85\xC0\x84=\xFF\xFF\xFF\xC7$   \xFFЃ\xC4\xB8\xFF\xFF\xFF\xFF[\xC2 \xC7D$   \xC7$   \xE8  \xB8\xFF\xFF\xFF\xFF\xE9P\xFF\xFF\xFF\x90\xC7D$   \xC7$
   \xE8`  \xB8\xFF\xFF\xFF\xFF\xE91\xFF\xFF\xFFf\x90\xC7D$   \xC7$   \xE8@  \xB8\xFF\xFF\xFF\xFF\xE9\xFF\xFF\xFF\x90\x90UWVS\x83\xEC
\xC7$\xB8S@ \xFF\xB4a@ \x8B
\xB0S@ \x83\xEC\x8B-\xF8a@ \x8B=\xCCa@ \x85\xDBt(\x8Dv \x8B\x89$\xFFՃ\xEC\x89\xC6\xFFׅ\xC0u
\x85\xF6t\x8BC\x894$\xFFЋ[\x85\xDBu\xDB\xC7$\xB8S@ \xFF\xE4a@ \x83\xEC\x83\xC4
[^_]Ív VS1\xF6\x83\xEC\xA1\xB4S@ \x85\xC0u\x83\xC4\x89\xF0[^Ð\x8D\xB4&    \xC7D$
   \xC7$   \xE8L\xF4\xFF\xFF\x85\xC0\x89\xC3tC\x8BD$ \xC7$\xB8S@ \x89\x8BD$$\x89C\xFF\xB4a@ \xA1\xB0S@ \x83\xEC\x89
\xB0S@ \xC7$\xB8S@ \x89C\xFF\xE4a@ \x83\xEC\x89\xF0\x83\xC4[^þ\xFF\xFF\xFF\xFF댍\xB6    \x8D\xBF    S\x83\xEC\xA1\xB4S@ \x8B\$ \x85\xC0u\x83\xC41\xC0[Ð\x8D\xB4&    \xC7$\xB8S@ \xFF\xB4a@ \x8B\xB0S@ \x83\xEC\x85\xD2t\x8B9\xC3u
-\xEB>\x8B9\xD9t(\x89‹B\x85\xC0u\xF1\xC7$\xB8S@ \xFF\xE4a@ \x83\xEC1\xC0\x83\xC4[Ð\x8D\xB4&    \x8BH\x89J\x89$\xE8J\xF3\xFF\xFF\xEBыB\xA3\xB0S@ \x89\xD0\xEB\xEA\x8Dt& S\x83\xEC\x8BD$$\x83\xF8\x84\x8F   r-\x83\xF8t\x83\xF8u\xA1\xB4S@ \x85\xC0t\xE8E\xFE\xFF\xFF\xEB\x8Dv \xE8;\xF8\xFF\xFF\x83\xC4\xB8   [Ð\xA1\xB4S@ \x85\xC0\x85\x85   \xA1\xB4S@ \x83\xF8uޡ\xB0S@ \x85\xC0t\x8BX\x89$\xE8\xCD\xF2\xFF\xFF\x85ۉ\xD8u\xEF\xC7\xB0S@     \xC7\xB4S@     \xC7$\xB8S@ \xFF\xB0a@ \x83\xEC랉\xF6\x8D\xBC'    \xA1\xB4S@ \x85\xC0t\xC7\xB4S@    \x83\xC4\xB8   [Ív \xC7$\xB8S@ \xFF\xE0a@ \x83\xEC\xEB\xD7\xE8\x99\xFD\xFF\xFF\xE9q\xFF\xFF\xFF\x90\x90\x90\x90@<\x818PE  t1\xC0\xB6\xC0\xC3f\x81x
\x94\xC0\xB6\xC0\xC3f\x90\x8BD$f\x818MZt1\xC0\xC3f\x90\xEB΍\xB4&    \x8D\xBC'    VS\x8BT$
\x8B\$R<\xB7r\xB7B\x85\xF6\x8DDt1ɐ\x8BP
9\xDAwP9\xD3r
\x83\xC1\x83\xC0(9\xF1u\xE81\xC0[^Ív UWVS1ۃ\xEC
\x8B|$0\x89<$\xE8'  \x83\xF8w
f\x81=  @ MZt
\x83\xC4
\x89\xD8[^_]Ð\xB8  @ \xE8F\xFF\xFF\xFF\x85\xC0t\xE7\xA1< @ \xB7\x90 @   @ \xB7h\x8D\\x85\xEDt'1\xF6\x8Dv \xC7D$   \x89|$\x89
$\xE8L\xF1\xFF\xFF\x85\xC0t\xAD\x83\xC6\x83\xC3(9\xEEuރ\xC4
1ۉ\xD8[^_]\xC3f\x901\xD2f\x81=  @ MZt\x89\xD0\xC3VS\xB8  @ \xE8\xD4\xFE\xFF\xFF\x85\xC0tJ\xA1< @ \x8B\$
\xB7\x90 @   @ \x81\xEB  @ \xB7p\x8DT\x85\xF6t!1ɍ\xB4&    \x8BB
9\xC3rB9\xC3r
\x83\xC1\x83\xC2(9\xF1u\xE81҉\xD0[^Ð1\xD2f\x81=  @ MZt\x89\xD0ø  @ \xE8f\xFE\xFF\xFF\x85\xC0t\xEF\xA1< @ \xB7\x90 @ \x89\xD0Ív 1\xD2f\x81=  @ MZS\x8BL$t\x89\xD0[Ív \x8D\xBC'    \xB8  @ \xE8&\xFE\xFF\xFF\x85\xC0t\xE4\xA1< @ \xB7\x90 @   @ \xB7X\x8DT\x85\xDBt
1\xC0\x8Dv \xF6B' t\x85\xC9t\xB8\x83\xE9\x83\xC0\x83\xC2(9\xD8u\xE91҉\xD0[Ív 1\xD2f\x81=  @ MZt\x89\xD0ø  @ \xE8\xC6\xFD\xFF\xFF\x85\xC0\xB8  @ EЉ\xD0É\xF6\x8D\xBC'    1\xC0f\x81=  @ MZt\xC3f\x90VS\xB8  @ \xE8\x94\xFD\xFF\xFF\x85\xC0tJ\xA1< @ \x8B\$
\x8D\x90  @ \xB7\x80 @ \x81\xEB  @ \xB7r\x8DD\x85\xF6t 1ɍ\xB6    \x8BP
9\xD3rP9\xD3r\x83\xC1\x83\xC0(9!
 \xF1u\xE81\xC0[^\xF3\xC3f\x90\x8B@$[^\xF7\xD0\xC1\xE8\xEB\xF0\x8Dt& WV1\xF6f\x81=  @ MZS\x8B\$t
\x89\xF0[^_Í\xB6    \xB8  @ \xE8\xFD\xFF\xFF\x85\xC0t\xE6\xA1< @ \x8D\x88  @ \x8B\x80\x80 @ \x85\xC0t\xD1\xB7y\xB7Q\x85\xFF\x8DTt\xC1\x8BJ
9\xC8rJ9\xC8r\x83\xC6\x83\xC2(9\xFEu\xE81\xF6\x89\xF0[^_\xC3  @ u
\xEB\xEF\x8Dt& \x83\xEB\x83\xC0\x8BH\x85\xC9u\x8BP
\x85\xD2tׅ\xDB\xE8\x8Bp
[\x81\xC6  @ \x89\xF0^_Ð\x90\x90\x90\x90\x90\x90\x90\x90QP=   \x8DL$
r\x81\xE9   \x83	 -   =   w\xEB)\xC1\x83	 XYÐ\x90\xFF%\x94b@ \x90\x90\xFF%\x8Cb@ \x90\x90\xFF%tb@ \x90\x90\xFF%pb@ \x90\x90\xFF%db@ \x90\x90\xFF%\b@ \x90\x90\xFF%Db@ \x90\x90\xFF%<b@ \x90\x90\xFF%b@ \x90\x90\xFF%
b@ \x90\x90f\x90f\x90U\x89\xE5]\xE9'\xE7\xFF\xFF\x90\x90\x90\x90\x90\x90\x90\xFF\xFF\xFF\xFF\xE0-@     \xFF\xFF\xFF\xFF                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
-   \x90
@ \xA0
@  .@ \xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF      \xFF\xFF\xFF\xFFN\xE6@\xBB\xB1\xBFD                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    E R R O R !   w NUL t l _ w a s p r i n t f :   F a i l u r e   t o   c o n s t r u c t   s t r i n g   % l s \ t l p k g \ t e x l i v e . t l p d b   r   depend release/ Software\Microsoft\windows\currentversion\uninstall\TeXLivexxxx " % l s "   " % l s "   F a i l e d   t o   s t a r t   t l s h e l l   " % l s "   r u n a s   F a i l e d   t o   s t a r t   t l s h e l l   e l e v a t e d   T l s h e l l :   c a n n o t   g e t   o w n   p a t h   N o   d i r e c t o r y ;   s h o u l d   n o t   h a v e   h a p p e n e d   % l s   % l s \ t l p k g \ t l t c l \ t c l k i t . e x e   C a n n o t   f i n d   t c l k i t . e x e   % l s \ t e x m f - d i s t \ s c r i p t s \ t l s h e l l \ t l s h e l l . t c l   % l s \ t e x m f - d i s t \ s c r i p t s \ t e x l i v e \ t l s h e l l . t c l   T l s h e l l   n o t   a v a i l a b l e   E r r o r   P r o b l e m   w i t h   i n s t a l l a t i o n :   c a n n o t   d e t e r m i n e   r e l e a s e !   % l s 
- % l s 
- % l s    S@ @P@  @ Unknown error   _matherr(): %s in %s(%g, %g)  (retval=%g)
-  Argument domain error (DOMAIN) Argument singularity (SIGN)  Overflow range error (OVERFLOW) The result is too small to be represented (UNDERFLOW)   Total loss of significance (TLOSS)  Partial loss of significance (PLOSS)    0D@ OD@ lD@ \x8CD@ \xC4D@ \xE8D@ Mingw-w64 runtime failure:
+9\xC1w\x8BzO9\xC8\x82\xB8   \x83\xC3\x83\xC29\xF3u\xE2\x89$\x89\xC6\xE8\xA8  \x85\xC0\x89\xC7\x84\xDE   \x8B5\xA4S@ \x8D
\x9B\xC1\xE3މF\xC7    \xE8\x92	  G
\x89F
\x8DD$\xC7D$
   \x89D$\xA1\xA4S@ \x8BD
\x89$\xFFb@ \x83\xEC
\x85\xC0ts\x8BD$(\x8DP\xC0\x83\xE2\xBFt<\x83\xE8\x83\xE0\xFBt4
\xA4S@ \x8BD$\x8BT$ \x89C\x89S\x89\$
\xC7D$@   \x89T$\x89$\xFF b@ \x83\xEC\x85\xC0t\x83\xA0S@ \x83\xC40[^_\xC31\xDB\xE9D\xFF\xFF\xFF\xFF\xCCa@ \xC7$\xB8E@ \x89D$\xE8\x90\xFE\xFF\xFF\xA1\xA4S@ \x8BD
\x89D$\x8BG\xC7$\x84E@ \x89D$\xE8p\xFE\xFF\xFF\x89t$\xC7$dE@ \xE8`\xFE\xFF\xFFU\x89\xE5WVS\x83\xEC<\x8B
\x9CS@ \x85\xDBt
+\x8De\xF4[^_]Ð\x8Dt& \xC7\x9CS@    \xE8\xF1  \x8D\x80\x8D\x85
   \xC1\xE8\xC1\xE0\xE8\xDC	  \xC7\xA0S@     )čD$\x83\xE0\xF0\xA3\xA4S@ \xB8`I@ -`I@ \x83\xF8~\xA8\x83\xF8
\x8E<  \x8B=`I@ \x85\xFF\x85\x8E   \x8B5dI@ \x85\xF6\x85\x80   \x8B
+hI@ \xBElI@ \x85\xC9\x84  \xBE`I@ \x8BF\x83\xF8\x85\xB3  \x83\xC6
\x81\xFE`I@ \x83P\xFF\xFF\xFF\x89]Ћ\xB6V\x8B~\x8D\x88  @ \x8B\x80  @ \x83\xFA\x8D\x9F  @ \x89E\xD4\x84\xE3   \x83\xFA \x84Z  \x83\xFA\x84"  \x89T$\xC7$F@ \xE8Q\xFD\xFF\xFF\x90\xBE`I@ \x81\xFE`I@ \x83\xF2\xFE\xFF\xFF\x89]ԋ~\x8B\x83\xC6\x8B\x9F  @ \x8D\x87  @ \xD3\xE8\x81\xFD\xFF\xFF\x81\xFE`I@ \x89\x9F  @ r׋]ԡ\xA0S@ \x85\xC0\x8D}\xE4\x8B5 b@ 
\xE9\xAC\xFE\xFF\xFF\x89\xF6\x8D\xBC'    \x83\xC3;
\xA0S@ \x8D\x94\xFE\xFF\xFF\x8B\xA4S@ \x8D\x9B\x8D\x82\x8B\x85\xD2t߉|$
\x89T$\x8BP\x89T$\x8B@\x89$\xFFփ\xEC\xEBÍv \xBE`I@ \x8B\x85\xD2\x85V\xFF\xFF\xFF\x8BF\x85\xC0\x84\xDE\xFE\xFF\xFF\xE9F\xFF\xFF\xFF\x90\xB7\x97  @ \x89\xD0
+  \xFF\xFFf\x83\xBF  @  HЋE\xD4)\xCAЉE\xE4\x89\xD8\xE8\xC6\xFC\xFF\xFF\xB7E\xE4f\x89\x87  @ \x83\xC6
\x81\xFE`I@ \x82\xB2\xFE\xFF\xFF\x8B]С\xA0S@ \xE94\xFF\xFF\xFF\xB6\x89ׁ\xCF \xFF\xFF\xFF\x80; H\xD7)\xCAЉE\xE4\x89\xD8\xE8\x80\xFC\xFF\xFF\xB6E\xE4\x88뽐\x8D\xB4&    \x8BE\xD4)\xC8\x89ljE\xE4\x89\xD8\xE8]\xFC\xFF\xFF\x89;랉D$\xC7$\xE0E@ \xE8\xE9\xFB\xFF\xFF\x90\x90\x90\x!
 90\x90\x90\x90\x90\x90S\x83\xEC\x8B\$ \x8B\x8B =\x91  \xC0wM=\x8D  \xC0\x83\xB2   =  \xC0\x85\xE7   \xC7D$    \xC7$
   \xE8\xA7  \x83\xF8\x84*  \x85\xC0t/\xC7$
   \xFFЃ\xC4\xB8\xFF\xFF\xFF\xFF[\xC2 \x90=\x94  \xC0t)=\x96  \xC0\x84\xA9   =\x93  \xC0tW\xA1\xACS@ \x85\xC0t=\x89\$ \x83\xC4[\xFF\xE0\x8Dt& \xC7D$    \xC7$   \xE8@  \x83\xF8\x84\xA4   \x85\xC0t\xC8\xC7$   \xFFи\xFF\xFF\xFF\xFF\x83\xC4[\xC2 \x8Dv \x8D\xBC'    \xC7D$    \xC7$   \xE8   \x83\xF8u\xC4\xC7D$   \xC7$   \xE8\xE7  \xE8\xAE\xFA\xFF\xFF\xB8\xFF\xFF\xFF\xFF붍\xB4&    =
  \xC0\x85^\xFF\xFF\xFF\xC7D$    \xC7$   \xE8\xB5  \x83\xF8t\\x85\xC0\x84=\xFF\xFF\xFF\xC7$   \xFFЃ\xC4\xB8\xFF\xFF\xFF\xFF[\xC2 \xC7D$   \xC7$   \xE8  \xB8\xFF\xFF\xFF\xFF\xE9P\xFF\xFF\xFF\x90\xC7D$   \xC7$
   \xE8`  \xB8\xFF\xFF\xFF\xFF\xE91\xFF\xFF\xFFf\x90\xC7D$   \xC7$   \xE8@  \xB8\xFF\xFF\xFF\xFF\xE9\xFF\xFF\xFF\x90\x90UWVS\x83\xEC
\xC7$\xB8S@ \xFF\xB4a@ \x8B
\xB0S@ \x83\xEC\x8B-\xF8a@ \x8B=\xCCa@ \x85\xDBt(\x8Dv \x8B\x89$\xFFՃ\xEC\x89\xC6\xFFׅ\xC0u
\x85\xF6t\x8BC\x894$\xFFЋ[\x85\xDBu\xDB\xC7$\xB8S@ \xFF\xE4a@ \x83\xEC\x83\xC4
[^_]Ív VS1\xF6\x83\xEC\xA1\xB4S@ \x85\xC0u\x83\xC4\x89\xF0[^Ð\x8D\xB4&    \xC7D$
   \xC7$   \xE8L\xF4\xFF\xFF\x85\xC0\x89\xC3tC\x8BD$ \xC7$\xB8S@ \x89\x8BD$$\x89C\xFF\xB4a@ \xA1\xB0S@ \x83\xEC\x89
\xB0S@ \xC7$\xB8S@ \x89C\xFF\xE4a@ \x83\xEC\x89\xF0\x83\xC4[^þ\xFF\xFF\xFF\xFF댍\xB6    \x8D\xBF    S\x83\xEC\xA1\xB4S@ \x8B\$ \x85\xC0u\x83\xC41\xC0[Ð\x8D\xB4&    \xC7$\xB8S@ \xFF\xB4a@ \x8B\xB0S@ \x83\xEC\x85\xD2t\x8B9\xC3u
+\xEB>\x8B9\xD9t(\x89‹B\x85\xC0u\xF1\xC7$\xB8S@ \xFF\xE4a@ \x83\xEC1\xC0\x83\xC4[Ð\x8D\xB4&    \x8BH\x89J\x89$\xE8J\xF3\xFF\xFF\xEBыB\xA3\xB0S@ \x89\xD0\xEB\xEA\x8Dt& S\x83\xEC\x8BD$$\x83\xF8\x84\x8F   r-\x83\xF8t\x83\xF8u\xA1\xB4S@ \x85\xC0t\xE8E\xFE\xFF\xFF\xEB\x8Dv \xE8;\xF8\xFF\xFF\x83\xC4\xB8   [Ð\xA1\xB4S@ \x85\xC0\x85\x85   \xA1\xB4S@ \x83\xF8uޡ\xB0S@ \x85\xC0t\x8BX\x89$\xE8\xCD\xF2\xFF\xFF\x85ۉ\xD8u\xEF\xC7\xB0S@     \xC7\xB4S@     \xC7$\xB8S@ \xFF\xB0a@ \x83\xEC랉\xF6\x8D\xBC'    \xA1\xB4S@ \x85\xC0t\xC7\xB4S@    \x83\xC4\xB8   [Ív \xC7$\xB8S@ \xFF\xE0a@ \x83\xEC\xEB\xD7\xE8\x99\xFD\xFF\xFF\xE9q\xFF\xFF\xFF\x90\x90\x90\x90@<\x818PE  t1\xC0\xB6\xC0\xC3f\x81x
\x94\xC0\xB6\xC0\xC3f\x90\x8BD$f\x818MZt1\xC0\xC3f\x90\xEB΍\xB4&    \x8D\xBC'    VS\x8BT$
\x8B\$R<\xB7r\xB7B\x85\xF6\x8DDt1ɐ\x8BP
9\xDAwP9\xD3r
\x83\xC1\x83\xC0(9\xF1u\xE81\xC0[^Ív UWVS1ۃ\xEC
\x8B|$0\x89<$\xE8'  \x83\xF8w
f\x81=  @ MZt
\x83\xC4
\x89\xD8[^_]Ð\xB8  @ \xE8F\xFF\xFF\xFF\x85\xC0t\xE7\xA1< @ \xB7\x90 @   @ \xB7h\x8D\\x85\xEDt'1\xF6\x8Dv \xC7D$   \x89|$\x89
$\xE8L\xF1\xFF\xFF\x85\xC0t\xAD\x83\xC6\x83\xC3(9\xEEuރ\xC4
1ۉ\xD8[^_]\xC3f\x901\xD2f\x81=  @ MZt\x89\xD0\xC3VS\xB8  @ \xE8\xD4\xFE\xFF\xFF\x85\xC0tJ\xA1< @ \x8B\$
\xB7\x90 @   @ \x81\xEB  @ \xB7p\x8DT\x85\xF6t!1ɍ\xB4&    \x8BB
9\xC3rB9\xC3r
\x83\xC1\x83\xC2(9\xF1u\xE81҉\xD0[^Ð1\xD2f\x81=  @ MZt\x89\xD0ø  @ \xE8f\xFE\xFF\xFF\x85\xC0t\xEF\xA1< @ \xB7\x90 @ \x89\xD0Ív 1\xD2f\x81=  @ MZS\x8BL$t\x89\xD0[Ív \x8D\xBC'    \xB8  @ \xE8&\xFE\xFF\xFF\x85\xC0t\xE4\xA1< @ \xB7\x90 @   @ \xB7X\x8DT\x85\xDBt
1\xC0\x8Dv \xF6B' t\x85\xC9t\xB8\x83\xE9\x83\xC0\x83\xC2(9\xD8u\xE91҉\xD0[Ív 1\xD2f\x81=  @ MZt\x89\xD0ø  @ \xE8\xC6\xFD\xFF\xFF\x85\xC0\xB8  @ EЉ\xD0É\xF6\x8D\xBC'    1\xC0f\x81=  @ MZt\xC3f\x90VS\xB8  @ \xE8\x94\xFD\xFF\xFF\x85\xC0tJ\xA1< @ \x8B\$
\x8D\x90  @ \xB7\x80 @ \x81\xEB  @ \xB7r\x8DD\x85\xF6t 1ɍ\xB6    \x8BP
9\xD3rP9\xD3r\x83\xC1\x83\xC0(9!
 \xF1u\xE81\xC0[^\xF3\xC3f\x90\x8B@$[^\xF7\xD0\xC1\xE8\xEB\xF0\x8Dt& WV1\xF6f\x81=  @ MZS\x8B\$t
\x89\xF0[^_Í\xB6    \xB8  @ \xE8\xFD\xFF\xFF\x85\xC0t\xE6\xA1< @ \x8D\x88  @ \x8B\x80\x80 @ \x85\xC0t\xD1\xB7y\xB7Q\x85\xFF\x8DTt\xC1\x8BJ
9\xC8rJ9\xC8r\x83\xC6\x83\xC2(9\xFEu\xE81\xF6\x89\xF0[^_\xC3  @ u
\xEB\xEF\x8Dt& \x83\xEB\x83\xC0\x8BH\x85\xC9u\x8BP
\x85\xD2tׅ\xDB\xE8\x8Bp
[\x81\xC6  @ \x89\xF0^_Ð\x90\x90\x90\x90\x90\x90\x90\x90QP=   \x8DL$
r\x81\xE9   \x83	 -   =   w\xEB)\xC1\x83	 XYÐ\x90\xFF%\x94b@ \x90\x90\xFF%\x8Cb@ \x90\x90\xFF%tb@ \x90\x90\xFF%pb@ \x90\x90\xFF%db@ \x90\x90\xFF%\b@ \x90\x90\xFF%Db@ \x90\x90\xFF%<b@ \x90\x90\xFF%b@ \x90\x90\xFF%
b@ \x90\x90f\x90f\x90U\x89\xE5]\xE97\xE7\xFF\xFF\x90\x90\x90\x90\x90\x90\x90\xFF\xFF\xFF\xFF\xD0-@     \xFF\xFF\xFF\xFF                
+   \x80
@ \x90
@ \xF0-@ \xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF      \xFF\xFF\xFF\xFFN\xE6@\xBB\xB1\xBFD                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    E R R O R !   w NUL t l _ w a s p r i n t f :   F a i l u r e   t o   c o n s t r u c t   s t r i n g   % l s \ t l p k g \ t e x l i v e . t l p d b   r   depend release/ Software\Microsoft\windows\currentversion\uninstall\TeXLivexxxx " % l s "   " % l s "   F a i l e d   t o   s t a r t   t l s h e l l   " % l s "   r u n a s   F a i l e d   t o   s t a r t   t l s h e l l   e l e v a t e d   T l s h e l l :   c a n n o t   g e t   o w n   p a t h   D i d   n o t   f i n d   T e X   L i v e   i n s t a l l a t i o n ; 
+ t h i s   i s   n o t   t h e   r i g h t   t l s h e l l .   % l s   % l s \ t l p k g \ t l t c l \ t c l k i t . e x e   C a n n o t   f i n d   t c l k i t . e x e   % l s \ t e x m f - d i s t \ s c r i p t s \ t l s h e l l \ t l s h e l l . t c l   % l s \ t e x m f - d i s t \ s c r i p t s \ t e x l i v e \ t l s h e l l . t c l   T l s h e l l   n o t   a v a i l a b l e   E r r o r   P r o b l e m   w i t h   i n s t a l l a t i o n :   c a n n o t   d e t e r m i n e   r e l e a s e !    S@ @P@   @ Unknown error   _matherr(): %s in %s(%g, %g)  (retval=%g)
+  Argument domain error (DOMAIN) Argument singularity (SIGN)  Overflow range error (OVERFLOW) The result is too small to be represented (UNDERFLOW)   Total loss of significance (TLOSS)  Partial loss of significance (PLOSS)    PD@ oD@ \x8CD@ \xACD@ \xE4D@ E@ Mingw-w64 runtime failure:
  Address %p has no image-section   VirtualQuery failed for %d bytes at address %p      VirtualProtect failed with code 0x%x    Unknown pseudo relocation protocol version %d.
      Unknown pseudo relocation bit size %d.
-   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 7.3-win32 20180312   GCC: (GNU) 7.3-win32 20180312   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 7.3-win32 20180312   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 7.3-win32 20180312                                                                                                                                                                                                   x`          \xB8f  \x98a  \x88`          (g  \xA8a  \xEC`          \xCCg  
b  \x84a          \xDCg  \xA4b  \x8Ca          \xF0g  \xACb                      \xB8b  \xCEb  \xE2b      \xF2b   c  c  *c  Bc  Pc  dc  zc  \x90c  \xA6c  \xB6c  \xCCc  \xDEc  \xF8c  d  $d  <d  Vd  td  |d  \x90d  \x9Ed  \xBAd  \xCCd      \xDCd  \xEAd  \xFAd  
e   e  2e  @e  Ne  Xe  be  ne  ze  \x82e  \x8Ae  \x94e  \x9Ee  \xA8e  \xB0e  \xBAe  \xC2e  \xCAe  \xD4e  \xDCe  \xE6e  \xF0e  \xFAe  f  f  f  "f  0f  :f  Df  Lf  Vf  bf  nf      xf      \x8Af  \x98f      \xB8b  \xCEb  \xE2b      \xF2b   c  c  *c  Bc  Pc  dc  zc  \x90c  \xA6c  \xB6c  \xCCc  \xDEc  \xF8c  d  $d  <d  Vd  td  |d  \x90d  \x9Ed  \xBAd  \xCCd      \xDCd  \xEAd  \xFAd  
e   e  2e  @e  Ne  Xe  be  ne  ze  \x82e  \x8Ae  \x94e  \x9Ee  \xA8e  \xB0e  \xBAe  \xC2e  \xCAe  \xD4e  \xDCe  \xE6e  \xF0e  \xFAe  f  f  f  "f  0f  :f  Df  Lf  Vf  bf  nf      xf      \x8Af  \x98f      IGetTokenInformation \xE7OpenProcessToken  QRegOpenKeyExA T CloseHandle \xAC CreateProcessW  \xD5 DeleteCritic!
 alSection \xF1 EnterCriticalSection  
ExitProcess \xC6GetCurrentProcess \xC7GetCurrentProcessId \xCBGetCurrentThreadId  \xEDGetFileAttributesW  GetLastError  GetModuleFileNameW  gGetStartupInfoW }GetSystemTimeAsFileTime \x99GetTickCount  \xEDInitializeCriticalSection (LeaveCriticalSection  \x98QueryPerformanceCounter mSetUnhandledExceptionFilter zSleep \x88TerminateProcess  \x8FTlsGetValue \x9CUnhandledExceptionFilter  \xBCVirtualProtect  \xBFVirtualQuery  8 __dllonexit E __lconv_init  i __set_app_type  l __setusermatherr  v __wgetmainargs  w __winitenv  \x8F _amsg_exit  \xA0 _cexit  \xF4 _fmode  \xF7 _fpreset  2_initterm 6_iob  \x97_lock 4_onexit \xC0_unlock \xBCcalloc  \xC6exit  \xC9fclose  \xCFfgets \xD4fopen \xD5fprintf \xDBfree  \xE4fwrite  malloc  memcpy  /signal  >strlen  @strncmp Astrncpy \xC3_vsnwprintf \xC8_wcmdln \xE5_wfopen abort atexit  svfprintf  tvfwprintf \x85wcsrchr 2ShellExecuteExW TMessageBoxW xPostQuitMessage    `   `   `  ADVAPI32.dll    `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  KERNEL32.dll    (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  msvcrt.dll  <`  SHELL32.dll P`  P`  USER32.dll          0@         @ 0
@          @ \xC0@                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \x80@ 
\x80@ \x90S@  p@                                                                                                                                                                   !
                                                                                                                                                                                                                                                                                                                                                                \x80   P  \x80                  8  \x80               	  \x80                     h  \x80               	  \x90   \xA0\x90  \xA8          H\xA1             (       @                                                                                                                                                                                                                      3\xAA\xCC4\xA3\xBF@@\x9F\xBF                                                                                            G\xB8\xD0+E\xB8\xD0~    U\xAA\xD5>\xB3\xCF[=\xB1\xCB\xC1:\xAE\xCA\xFB6\xAB\xC9^            @\x80\xBF(\x82\x963'v\x8CT#n\x80H                                                                J\xBC\xD7&J\xBE\xD5\xEAI\xBD\xD5\xDDJ\xBD\xD6>E\xBA\xD2\xD5D\xB8\xD1\xFFA\xB5\xCF\xFF>\xB2\xCD\xEB@\x9F\xBF3\xAA\xCC5\xA3\xBEV2\x98\xB3\xA4.\x90\xA8\xED+\x86\x9D\xFF(}\x91\xF3'o\x83'                                                            U\xD5\xD5O\xC3\xD9\xD5O\xC3\xD8\xFFN\xC2\xD8\xFFL\xC1\xD7\xFFJ\xBF\xD5\xFFG\xBC\xD4\xFFE\xB9\xD1\xFFA\xB5\xCF\xEE?\xB2\xCC\xE5:\xAE\xCA\xFF6\xA9\xC6\xFF3\x9F\xBA\xFF0\x96\xAF\xFF-\x8C\xA3\xFF-\x85\x97\xCA&w\x8C\xAA#m\xBB!gw\xCF!gx\xEC!iyN                                            S\xC7\xDBrT\xC8\xDC\xFFS\xC8\xDC\xFFR\xC7\xDB\xFFQ\xC5\xDA\xFFN\xC3\xD8\xFFK\xC0\xD6\xFFH\xBC\xD4\xFFE\xB9\xD1\xFFA\xB5\xCF\xFF=\xB1\xCC\xFF9\xAD\xC9\xFF5\xA5\xC1\xFF1\x9B\xB5\xFF.\x91\xA9\xFF+\x86\x9D\xFF'|\x91\xFF$q\x84\xFF!gx\xFF!gx\xFF!k{                                            X\xCC\xDF\xC7X\xCC\xDE\xFFX\xCD\xDE\xFFW\xCB\xDE\xFFU\xC9\xDD\xFFR\xC7\xDB\xFFO\xC3\xD9\xFFK\xC0\xD6\xFFG\xBC\xD4\xFFC\xB8\xD1\xFF?\xB3\xCE\xFF;\xAF\xCB\xFF6\xAA\xC7\xFF3\xA0\x!
 BB\xFF0\x95\xAE\xFF,\x8A\xA2\xFF)\x95\xFF%u\x88\xFF"j{\xFF!gx\xFE$mm                                    U\xCA\xDF0P\xBF\xD6\xE2G\xB4\xCF\xFF@\xB1\xCD\xFF=\xAE\xCB\xFFA\xB4\xCF\xFFO\xC3\xD9\xFFT\xC8\xDD\xFFR\xC7\xDA\xFFN\xC3\xD8\xFFJ\xBF\xD5\xFFF\xBA\xD2\xFFA\xB6\xCF\xFF=\xB1\xCC\xFF8\xAC\xC9\xFF4\xA4\xBF\xFF1\x99\xB3\xFF-\x8E\xA6\xFF*\x83\x99\xFF&x\x8C\xFF"m\xFF,o{\xFE\xED\xF9\xB3T                                N\xC1\xDB1>\xB1\xCD\xF95\xA6\xC2\xFF9\xA6\xC0\xFFD\xB0\xC6\xFFC\xAD\xC3\xFF6\x9D\xB5\xFF2\x9A\xB4\xFF4\x9F\xBA\xFF?\xB1\xCB\xFFP\xC4\xD9\xFFL\xC1\xD7\xFFH\xBC\xD4\xFFC\xB7\xD0\xFF>\xB3\xCD\xFF:\xAE\xCA\xFF5\xA7\xC3\xFF2\x9C\xB6\xFF.\x90\xA9\xFF*\x85\x9C\xFF'z\x8F\xFF#o\x82\xFF<z\x80\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3^                        I\xB6\xB6<\xAB\xC4\xF42\x98\xB1\xFFL\xB7\xCA\xFFe\xD9\xE7\xFFg\xDB\xE9\xFFf\xDB\xE9\xFFc\xD7\xE5\xFFO\xBB\xCE\xFFQ\xC2\xD5\xFFI\xBA\xD0\xFFA\xB5\xCE\xFFN\xC2\xD8\xFFI\xBE\xD5\xFFE\xB9\xD1\xFF@\xB4\xCE\xFF;\xAF\xCB\xFF6\xA9\xC6\xFF2\x9E\xB9\xFF/\x92\xAB\xFF+\x87\x9E\xFF'|\x91\xFF$q\x83\xFFR\x8B\x87\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xF8\xED\xFB\xB4:                    >\xAA¬0\x90\xA8\xFFR\xBE\xD0\xFFd\xD9\xE8\xFFh\xDD\xEB\xFFk\xE0\xED\xFFj\xDF\xEC\xFFg\xDC\xEA\xFFb\xD7\xE6\xFF]\xD2\xE3\xFFY\xCD\xE0\xFFL\xBF\xD5\xFFM\xC0\xD7\xFFJ\xBF\xD5\xFFE\xB9\xD2\xFF@\xB5\xCF\xFF;\xB0\xCB\xFF7\xAB\xC8\xFF3\x9F\xBA\xFF/\x94\xAD\xFF+\x88\x9F\xFF(}\x92\xFF$r\x85\xFFF\x82\x83\xFFs\xA2\x90\xFF\x8A\xB3\x97\xFF\xEC\xFA\xB3\xCC\xFF\xFF\xFF            7\xA4\xB63\x95\xAC\xF7I\xB1\xC5\xFF`\xD5\xE5\xFFe\xDA\xE8\xFFj\xDF\xEC\xFFo\xE4\xF0\xFFm\xE2\xEE\xFFh\xDD\xEB\xFFc\xD8\xE7\xFF^\xD3\xE4\xFFY\xCE\xE0\xFFT\xC9\xDD\xFFO\xC4\xD9\xFFK\xBF\xD6\xFFF\xBA\xD2\xFFA\xB5\xCF\xFF<\xB0\xCB\xFF7\xAB\xC8\xFF3\xA0\xBB\xFF/\x94\xAD\xFF,\x89\xA0\xFF(}\x92\xFF$r\x85\xFF!gx\xFF!gx\xFF\x9B\xBF\x9B\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB2]            6\xA1\xBCrL\xBB\xD0\xE8[\xD0\xE1\xFF`\xD4\xE5\xFFd\xD9\xE8\xFFi\xDE\xEB\xFFl\xE1\xED\xFFk\xE0\xED\xFFg\xDC\xEA\xFFc\xD7\xE7\xFF^\xD3\xE3\xFFY\xCE\xE0\xFFT\xC9\xDC\xFFO\xC4\xD9\!
 xFFJ\xBF\xD6\xFFE\xBA\xD2\xFF@\xB5\xCF\xFF;\xB0\xCB\xFF7\xAB\xC8\xFF3\x9F\xBA\xFF/\x94\xAD\xFF,\x89\xA0\xFF(}\x92\xFF$r\x85\xFF!gx\xFF!gx\xFF\xBCץ\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xBD            M\xC2؛U\xC8\xDC\xFF0\x82\x93\xFF1\x83\x93\xFFO\xB6\xC5\xFFf\xDA\xE9\xFFh\xDD\xEA\xFFg\xDC\xEA\xFFd\xD9\xE8\xFFa\xD5\xE5\xFF\\xD1\xE2\xFFX\xCC\xDF\xFFS\xC8\xDC\xFFN\xC3\xD8\xFFJ\xBE\xD5\xFFE\xB9\xD2\xFF@\xB4\xCE\xFF;\xAF\xCB\xFF6\xA9\xC6\xFF3\x9E\xB9\xFF/\x93\xAC\xFF+\x88\x9F\xFF(|\x91\xFF$q\x84\xFF!gx\xFF!gx\xFF\xDB\xED\xAE\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFA\xEF\xFF\xAF        N\xC3\xD8\xDDC\xAA\xBD\xFF!gx\xFF!gx\xFF5\x89\x9A\xFFb\xD6\xE6\xFFc\xD8\xE7\xFFb\xD7\xE7\xFFa\xD5\xE5\xFF]\xD2\xE3\xFFZ\xCE\xE0\xFFV\xCA\xDE\xFFQ\xC6\xDA\xFFM\xC1\xD7\xFFH\xBC\xD4\xFFD\xB8\xD1\xFF?\xB3\xCD\xFF:\xAE\xCA\xFF5\xA7\xC4\xFF2\x9C\xB7\xFF.\x91\xAA\xFF+\x86\x9C\xFF'{\x8F\xFF#p\x82\xFF!gx\xFF.q{\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEE\xFC\xB2I        L\xC1\xD8\xC2F\xB1\xC4\xFF)v\x87\xFF2\x87\x98\xFFU\xC4\xD5\xFF]\xD2\xE3\xFF^\xD3\xE4\xFF^\xD3\xE3\xFF\\xD1\xE2\xFFZ\xCE\xE0\xFFW\xCB\xDE\xFFS\xC8\xDC\xFFO\xC3\xD9\xFFk\xCB\xDD\xFF\x9D\xD9\xE6\xFF\x85\xBF\xCD\xFFT\xB9\xD1\xFF9\xAD\xC9\xFF5\xA4\xC0\xFF1\x9A\xB4\xFF-\x8F\xA7\xFF*\x84\x9A\xFF&y\x8D\xFF#m\x80\xFF!gx\xFFN\x87\x85\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB4b        J\xBF\xD34N\xC2\xD8\xEFQ\xC6\xDA\xFFT\xC9\xDC\xFFW\xCB\xDE\xFFX\xCD\xE0\xFFY\xCE\xE0\xFFY\xCE\xE0\xFFX\xCD\xDF\xFFV\xCB\xDE\xFFS\xC8\xDC\xFFP\xC4\xD9\xFF\x96\xDB\xE7\xFF\xFC\xFE\xFE\xFFJJJ\xFF   \xFFRTT\xFFj\xC0\xD6\xFF3\xA1\xBC\xFF0\x96\xB0\xFF-\x8C\xA5\xFF-\x8B\xA2\xFF'~\x94\xFF"k}\xFF!gx\xFF\x80\xAD\x94\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFB\xB4w            M\xC1\xD8!M\xC2ْP\xC5\xDA\xD6R\xC7\xDB\xF0T\xC8\xDC\xFFU\xC9\xDD\xFFT\xC9\xDD\xFFT\xC8\xDC\xFFR\xC6\xDB\xFFO\xC4\xD9\xFFZ\xC6\xDA\xFF\xFB\xFD\xFE\xFF\xF9\xF9\xF9\xFF\xFF   \xFF\xFF\xE2\xF2\xF6\xFF2\x9C\xB7\xFF1\x96\xB0\xFF*\x81\x96\xFF+\x84\x9B\xFF.\x8E\xA6\xFF-\x8A\xA3\xFF"iz\xFF\xC0ڦ\xFF\xEC\xFA\xB3!
 \xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB3d                            \x95\xDD\xC9x\xD2\xD0\xFFR\xC5\xD8\xFFO\xC3\xD9\xFFM\xC2\xD8\xFFK\xBF\xD6\xFFs\xCC\xDE\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF|||\xFF\xFF\x86\x86\x86\xFF\xFF\xFF\xFF\xFF9\x9B\xB4\xFF.\x90\xA8\xFF/\x97\xB0\xFF'w\x8A\xFF)\x81\x96\xFF,\x8B\xA2\xFF<\x93\xA3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEE\xFC\xB2I                            \xEB\xFF\xB8\xEC\xFA\xB3\xFD\xDE\xF4\xB6\xFF\xB5\xE6\xBF\xFF\xA0\xDD\xE2\xFFU\xA1\xB0\xFF<\x84\x93\xFF\xF9\xFC\xFD\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\xEF\xF3\xFF/\x92\xAA\xFF+\x88\x9F\xFF1\x98\xB2\xFF/\x92\xAB\xFF%t\x87\xFF(|\x91\xFF,\x87\x9D\xFF\xD0\xEC\xB2\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFC\xE7\xFF\xB6                                \xEC\xFA\xB3\xC8\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xFB\xFE\xEF\xFF\x94\x94\x94\xFF   \xFF{\x90\x95\xFF\xFB\xFD\xFE\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF2\xF9\xFB\xFFb\xAE\xC2\xFF,\x8B\xA3\xFF)\x82\x98\xFF'z\x8D\xFF.\x90\xA7\xFF4\xA1\xBC\xFF-\x8B\xA2\xFF+\x85\x9A\xFF\x9Bί\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB3\xC2                                    \xED\xFA\xB2c\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xF2\xFC\xCA\xFF\xFF\xFF\xFE\xFF\xD2\xD2\xD2\xFF\xEB\xEB\xEB\xFF\x9F\xD7\xE1\xFF\x87\xCA\xDA\xFF~\xC2\xD3\xFFA\x9F\xB6\xFF-\x8E\xA5\xFF*\x85\x9B\xFF'|\x91\xFF9\x80\x8B\xFFD}\\xFF+g\xFF\xB9\xE2\xB3\xFF\xC8\xEA\xB7\xFF\xEB\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB2]                                    \xFF\xFF\xCC\xEC\xFA\xB3\xDA\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEF\xFB\xC0\xFF\xDB\xF4\xD6\xFFy\xD0\xDA\xFF9\xAD\xC9\xFF;\x9A\xAD\xFF;\x9A\xAA\xFF-\x8E\xA6\xFF+\x86\x9D\xFF-\x82\x94\xFF\xB3ӧ\xFF\xCF\xE3\x98\xFF+a \xFFFv\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xD8\xFF\xFF\xBF                                        \xEB\xFB\xB3@\xEC\xFA\xB3\xFA\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFFzҿ\xFF5\xAC\xC8\xFF.\x8F\xA8\xFF\x87\xB4\x9A\xFF<o\xFF/n2\xFF\x8A\xBA\x9C\xFF!
 \xA3ɤ\xFF\xDF\xF1\xB0\xFF\xA2\xC0o\xFF+a \xFF\x9B\xBAh\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xF8\xED\xFB\xB4:                                                \xED\xFA\xB2c\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\x8BҾ\xFFI\xA0\xAD\xFF\xB0\x99\xFF\xE4\xF4\xB1\xFF:n\xFF+a \xFF\xBDԇ\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xC6ۏ\xFF\x86\xA9T\xFF\xEA\xF9\xB2\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3^                                                        \xEC\xFA\xB3n\xEC\xFA\xB3\xFB\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\x82\xA6P\xFF2g\xFF\xDB\xEC\xA3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFB\xEC\xFA\xB3l                                                                \xED\xFB\xB39\xEC\xFA\xB3\xD2\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEA\xF8\xB1\xFF\xDC\xEE\xA5\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB3\xCF\xEC\xFA\xB25                                                                        \xFF\xFF\xAA\xED\xFA\xB4b\xEB\xFA\xB4\xC4\xEC\xFA\xB3\xFC\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFC\xED\xFA\xB3\xC2\xEC\xFA\xB4_\xFF\xFF\x80                                                                                        \xF2\xFF\xAE\xED\xFB\xB5H\xED\xFA\xB2c\xEC\xFB\xB4w\xED\xFA\xB2c\xED\xFB\xB5H\xF1\xFF\xB8                                                                                                                                                                                                                                                                                                                                                                                                                                        \xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF9\xFF\xFF\xFF!\xC3\xFF\xFE  ?\xFE  ?\xFC  ?\xF8  ?\xF0  \xE0  \xC0  \xC0  \xC0  \x80  !
 \x80  \x80  \xC0  \xE0  \xFE  \xFE  \xFE  \xFF  \xFF  \xFF\x80 \xFF\xC0 \xFF\xE0 ?\xFF\xF0 \xFF\xFC\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF           \xA8                                                                                                                                                                       
\ No newline at end of file
+   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 7.3-win32 20180312   GCC: (GNU) 7.3-win32 20180312   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 7.3-win32 20180312   GCC: (GNU) 6.3.0 20170415   GCC: (GNU) 7.3-win32 20180312                                                                                                                                                                   x`          \xB8f  \x98a  \x88`          (g  \xA8a  \xEC`          \xCCg  
b  \x84a          \xDCg  \xA4b  \x8Ca          \xF0g  \xACb                      \xB8b  \xCEb  \xE2b      \xF2b   c  c  *c  Bc  Pc  dc  zc  \x90c  \xA6c  \xB6c  \xCCc  \xDEc  \xF8c  d  $d  <d  Vd  td  |d  \x90d  \x9Ed  \xBAd  \xCCd      \xDCd  \xEAd  \xFAd  
e   e  2e  @e  Ne  Xe  be  ne  ze  \x82e  \x8Ae  \x94e  \x9Ee  \xA8e  \xB0e  \xBAe  \xC2e  \xCAe  \xD4e  \xDCe  \xE6e  \xF0e  \xFAe  f  f  f  "f  0f  :f  Df  Lf  Vf  bf  nf      xf      \x8Af  \x98f      \xB8b  \xCEb  \xE2b      \xF2b   c  c  *c  Bc  Pc  dc  zc  \x90c  \xA6c  \xB6c  \xCCc  \xDEc  \xF8c  d  $d  <d  Vd  td  |d  \x90d  \x9Ed  \xBAd  \xCCd      \xDCd  \xEAd  \xFAd  
e   e  2e  @e  Ne  Xe  be  ne  ze  \x82e  \x8Ae  \x94e  \x9Ee  \xA8e  \xB0e  \xBAe  \xC2e  \xCAe  \xD4e  \xDCe  \xE6e  \xF0e  \xFAe  f  f  f  "f  0f  :f  Df  Lf  Vf  bf  nf      xf      \x8Af  \x98f      IGetTokenInformation \xE7OpenProcessToken  QRegOpenKeyExA T CloseHandle \xAC CreateProcessW  \xD5 DeleteCriticalSection \xF1 EnterCriticalSect!
 ion  
ExitProcess \xC6GetCurrentProcess \xC7GetCurrentProcessId \xCBGetCurrentThreadId  \xEDGetFileAttributesW  GetLastError  GetModuleFileNameW  gGetStartupInfoW }GetSystemTimeAsFileTime \x99GetTickCount  \xEDInitializeCriticalSection (LeaveCriticalSection  \x98QueryPerformanceCounter mSetUnhandledExceptionFilter zSleep \x88TerminateProcess  \x8FTlsGetValue \x9CUnhandledExceptionFilter  \xBCVirtualProtect  \xBFVirtualQuery  8 __dllonexit E __lconv_init  i __set_app_type  l __setusermatherr  v __wgetmainargs  w __winitenv  \x8F _amsg_exit  \xA0 _cexit  \xF4 _fmode  \xF7 _fpreset  2_initterm 6_iob  \x97_lock 4_onexit \xC0_unlock \xBCcalloc  \xC6exit  \xC9fclose  \xCFfgets \xD4fopen \xD5fprintf \xDBfree  \xE4fwrite  malloc  memcpy  /signal  >strlen  @strncmp Astrncpy \xC3_vsnwprintf \xC8_wcmdln \xE5_wfopen abort atexit  svfprintf  tvfwprintf \x85wcsrchr 2ShellExecuteExW TMessageBoxW xPostQuitMessage    `   `   `  ADVAPI32.dll    `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  KERNEL32.dll    (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  (`  msvcrt.dll  <`  SHELL32.dll P`  P`  USER32.dll          0@         @  
@           @ \xB0@                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              \x80@ 
\x80@ \x90S@  p@                                                                                                                                                                                                   !
                                                                                                                                                                                                                                                                                                                                \x80   P  \x80                  8  \x80               	  \x80                     h  \x80               	  \x90   \xA0\x90  \xA8          H\xA1             (       @                                                                                                                                                                                                                      3\xAA\xCC4\xA3\xBF@@\x9F\xBF                                                                                            G\xB8\xD0+E\xB8\xD0~    U\xAA\xD5>\xB3\xCF[=\xB1\xCB\xC1:\xAE\xCA\xFB6\xAB\xC9^            @\x80\xBF(\x82\x963'v\x8CT#n\x80H                                                                J\xBC\xD7&J\xBE\xD5\xEAI\xBD\xD5\xDDJ\xBD\xD6>E\xBA\xD2\xD5D\xB8\xD1\xFFA\xB5\xCF\xFF>\xB2\xCD\xEB@\x9F\xBF3\xAA\xCC5\xA3\xBEV2\x98\xB3\xA4.\x90\xA8\xED+\x86\x9D\xFF(}\x91\xF3'o\x83'                                                            U\xD5\xD5O\xC3\xD9\xD5O\xC3\xD8\xFFN\xC2\xD8\xFFL\xC1\xD7\xFFJ\xBF\xD5\xFFG\xBC\xD4\xFFE\xB9\xD1\xFFA\xB5\xCF\xEE?\xB2\xCC\xE5:\xAE\xCA\xFF6\xA9\xC6\xFF3\x9F\xBA\xFF0\x96\xAF\xFF-\x8C\xA3\xFF-\x85\x97\xCA&w\x8C\xAA#m\xBB!gw\xCF!gx\xEC!iyN                                            S\xC7\xDBrT\xC8\xDC\xFFS\xC8\xDC\xFFR\xC7\xDB\xFFQ\xC5\xDA\xFFN\xC3\xD8\xFFK\xC0\xD6\xFFH\xBC\xD4\xFFE\xB9\xD1\xFFA\xB5\xCF\xFF=\xB1\xCC\xFF9\xAD\xC9\xFF5\xA5\xC1\xFF1\x9B\xB5\xFF.\x91\xA9\xFF+\x86\x9D\xFF'|\x91\xFF$q\x84\xFF!gx\xFF!gx\xFF!k{                                            X\xCC\xDF\xC7X\xCC\xDE\xFFX\xCD\xDE\xFFW\xCB\xDE\xFFU\xC9\xDD\xFFR\xC7\xDB\xFFO\xC3\xD9\xFFK\xC0\xD6\xFFG\xBC\xD4\xFFC\xB8\xD1\xFF?\xB3\xCE\xFF;\xAF\xCB\xFF6\xAA\xC7\xFF3\xA0\xBB\xFF0\x95\xAE\xFF,\x8A\xA2\xFF!
 )\x95\xFF%u\x88\xFF"j{\xFF!gx\xFE$mm                                    U\xCA\xDF0P\xBF\xD6\xE2G\xB4\xCF\xFF@\xB1\xCD\xFF=\xAE\xCB\xFFA\xB4\xCF\xFFO\xC3\xD9\xFFT\xC8\xDD\xFFR\xC7\xDA\xFFN\xC3\xD8\xFFJ\xBF\xD5\xFFF\xBA\xD2\xFFA\xB6\xCF\xFF=\xB1\xCC\xFF8\xAC\xC9\xFF4\xA4\xBF\xFF1\x99\xB3\xFF-\x8E\xA6\xFF*\x83\x99\xFF&x\x8C\xFF"m\xFF,o{\xFE\xED\xF9\xB3T                                N\xC1\xDB1>\xB1\xCD\xF95\xA6\xC2\xFF9\xA6\xC0\xFFD\xB0\xC6\xFFC\xAD\xC3\xFF6\x9D\xB5\xFF2\x9A\xB4\xFF4\x9F\xBA\xFF?\xB1\xCB\xFFP\xC4\xD9\xFFL\xC1\xD7\xFFH\xBC\xD4\xFFC\xB7\xD0\xFF>\xB3\xCD\xFF:\xAE\xCA\xFF5\xA7\xC3\xFF2\x9C\xB6\xFF.\x90\xA9\xFF*\x85\x9C\xFF'z\x8F\xFF#o\x82\xFF<z\x80\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3^                        I\xB6\xB6<\xAB\xC4\xF42\x98\xB1\xFFL\xB7\xCA\xFFe\xD9\xE7\xFFg\xDB\xE9\xFFf\xDB\xE9\xFFc\xD7\xE5\xFFO\xBB\xCE\xFFQ\xC2\xD5\xFFI\xBA\xD0\xFFA\xB5\xCE\xFFN\xC2\xD8\xFFI\xBE\xD5\xFFE\xB9\xD1\xFF@\xB4\xCE\xFF;\xAF\xCB\xFF6\xA9\xC6\xFF2\x9E\xB9\xFF/\x92\xAB\xFF+\x87\x9E\xFF'|\x91\xFF$q\x83\xFFR\x8B\x87\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xF8\xED\xFB\xB4:                    >\xAA¬0\x90\xA8\xFFR\xBE\xD0\xFFd\xD9\xE8\xFFh\xDD\xEB\xFFk\xE0\xED\xFFj\xDF\xEC\xFFg\xDC\xEA\xFFb\xD7\xE6\xFF]\xD2\xE3\xFFY\xCD\xE0\xFFL\xBF\xD5\xFFM\xC0\xD7\xFFJ\xBF\xD5\xFFE\xB9\xD2\xFF@\xB5\xCF\xFF;\xB0\xCB\xFF7\xAB\xC8\xFF3\x9F\xBA\xFF/\x94\xAD\xFF+\x88\x9F\xFF(}\x92\xFF$r\x85\xFFF\x82\x83\xFFs\xA2\x90\xFF\x8A\xB3\x97\xFF\xEC\xFA\xB3\xCC\xFF\xFF\xFF            7\xA4\xB63\x95\xAC\xF7I\xB1\xC5\xFF`\xD5\xE5\xFFe\xDA\xE8\xFFj\xDF\xEC\xFFo\xE4\xF0\xFFm\xE2\xEE\xFFh\xDD\xEB\xFFc\xD8\xE7\xFF^\xD3\xE4\xFFY\xCE\xE0\xFFT\xC9\xDD\xFFO\xC4\xD9\xFFK\xBF\xD6\xFFF\xBA\xD2\xFFA\xB5\xCF\xFF<\xB0\xCB\xFF7\xAB\xC8\xFF3\xA0\xBB\xFF/\x94\xAD\xFF,\x89\xA0\xFF(}\x92\xFF$r\x85\xFF!gx\xFF!gx\xFF\x9B\xBF\x9B\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB2]            6\xA1\xBCrL\xBB\xD0\xE8[\xD0\xE1\xFF`\xD4\xE5\xFFd\xD9\xE8\xFFi\xDE\xEB\xFFl\xE1\xED\xFFk\xE0\xED\xFFg\xDC\xEA\xFFc\xD7\xE7\xFF^\xD3\xE3\xFFY\xCE\xE0\xFFT\xC9\xDC\xFFO\xC4\xD9\xFFJ\xBF\xD6\xFFE\xBA\xD2\xFF@\x!
 B5\xCF\xFF;\xB0\xCB\xFF7\xAB\xC8\xFF3\x9F\xBA\xFF/\x94\xAD\xFF,\x89\xA0\xFF(}\x92\xFF$r\x85\xFF!gx\xFF!gx\xFF\xBCץ\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xBD            M\xC2؛U\xC8\xDC\xFF0\x82\x93\xFF1\x83\x93\xFFO\xB6\xC5\xFFf\xDA\xE9\xFFh\xDD\xEA\xFFg\xDC\xEA\xFFd\xD9\xE8\xFFa\xD5\xE5\xFF\\xD1\xE2\xFFX\xCC\xDF\xFFS\xC8\xDC\xFFN\xC3\xD8\xFFJ\xBE\xD5\xFFE\xB9\xD2\xFF@\xB4\xCE\xFF;\xAF\xCB\xFF6\xA9\xC6\xFF3\x9E\xB9\xFF/\x93\xAC\xFF+\x88\x9F\xFF(|\x91\xFF$q\x84\xFF!gx\xFF!gx\xFF\xDB\xED\xAE\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFA\xEF\xFF\xAF        N\xC3\xD8\xDDC\xAA\xBD\xFF!gx\xFF!gx\xFF5\x89\x9A\xFFb\xD6\xE6\xFFc\xD8\xE7\xFFb\xD7\xE7\xFFa\xD5\xE5\xFF]\xD2\xE3\xFFZ\xCE\xE0\xFFV\xCA\xDE\xFFQ\xC6\xDA\xFFM\xC1\xD7\xFFH\xBC\xD4\xFFD\xB8\xD1\xFF?\xB3\xCD\xFF:\xAE\xCA\xFF5\xA7\xC4\xFF2\x9C\xB7\xFF.\x91\xAA\xFF+\x86\x9C\xFF'{\x8F\xFF#p\x82\xFF!gx\xFF.q{\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEE\xFC\xB2I        L\xC1\xD8\xC2F\xB1\xC4\xFF)v\x87\xFF2\x87\x98\xFFU\xC4\xD5\xFF]\xD2\xE3\xFF^\xD3\xE4\xFF^\xD3\xE3\xFF\\xD1\xE2\xFFZ\xCE\xE0\xFFW\xCB\xDE\xFFS\xC8\xDC\xFFO\xC3\xD9\xFFk\xCB\xDD\xFF\x9D\xD9\xE6\xFF\x85\xBF\xCD\xFFT\xB9\xD1\xFF9\xAD\xC9\xFF5\xA4\xC0\xFF1\x9A\xB4\xFF-\x8F\xA7\xFF*\x84\x9A\xFF&y\x8D\xFF#m\x80\xFF!gx\xFFN\x87\x85\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB4b        J\xBF\xD34N\xC2\xD8\xEFQ\xC6\xDA\xFFT\xC9\xDC\xFFW\xCB\xDE\xFFX\xCD\xE0\xFFY\xCE\xE0\xFFY\xCE\xE0\xFFX\xCD\xDF\xFFV\xCB\xDE\xFFS\xC8\xDC\xFFP\xC4\xD9\xFF\x96\xDB\xE7\xFF\xFC\xFE\xFE\xFFJJJ\xFF   \xFFRTT\xFFj\xC0\xD6\xFF3\xA1\xBC\xFF0\x96\xB0\xFF-\x8C\xA5\xFF-\x8B\xA2\xFF'~\x94\xFF"k}\xFF!gx\xFF\x80\xAD\x94\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFB\xB4w            M\xC1\xD8!M\xC2ْP\xC5\xDA\xD6R\xC7\xDB\xF0T\xC8\xDC\xFFU\xC9\xDD\xFFT\xC9\xDD\xFFT\xC8\xDC\xFFR\xC6\xDB\xFFO\xC4\xD9\xFFZ\xC6\xDA\xFF\xFB\xFD\xFE\xFF\xF9\xF9\xF9\xFF\xFF   \xFF\xFF\xE2\xF2\xF6\xFF2\x9C\xB7\xFF1\x96\xB0\xFF*\x81\x96\xFF+\x84\x9B\xFF.\x8E\xA6\xFF-\x8A\xA3\xFF"iz\xFF\xC0ڦ\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3!
 \xFF\xED\xFA\xB3d                            \x95\xDD\xC9x\xD2\xD0\xFFR\xC5\xD8\xFFO\xC3\xD9\xFFM\xC2\xD8\xFFK\xBF\xD6\xFFs\xCC\xDE\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF|||\xFF\xFF\x86\x86\x86\xFF\xFF\xFF\xFF\xFF9\x9B\xB4\xFF.\x90\xA8\xFF/\x97\xB0\xFF'w\x8A\xFF)\x81\x96\xFF,\x8B\xA2\xFF<\x93\xA3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEE\xFC\xB2I                            \xEB\xFF\xB8\xEC\xFA\xB3\xFD\xDE\xF4\xB6\xFF\xB5\xE6\xBF\xFF\xA0\xDD\xE2\xFFU\xA1\xB0\xFF<\x84\x93\xFF\xF9\xFC\xFD\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xDE\xEF\xF3\xFF/\x92\xAA\xFF+\x88\x9F\xFF1\x98\xB2\xFF/\x92\xAB\xFF%t\x87\xFF(|\x91\xFF,\x87\x9D\xFF\xD0\xEC\xB2\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFC\xE7\xFF\xB6                                \xEC\xFA\xB3\xC8\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xFB\xFE\xEF\xFF\x94\x94\x94\xFF   \xFF{\x90\x95\xFF\xFB\xFD\xFE\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF2\xF9\xFB\xFFb\xAE\xC2\xFF,\x8B\xA3\xFF)\x82\x98\xFF'z\x8D\xFF.\x90\xA7\xFF4\xA1\xBC\xFF-\x8B\xA2\xFF+\x85\x9A\xFF\x9Bί\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB3\xC2                                    \xED\xFA\xB2c\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xF2\xFC\xCA\xFF\xFF\xFF\xFE\xFF\xD2\xD2\xD2\xFF\xEB\xEB\xEB\xFF\x9F\xD7\xE1\xFF\x87\xCA\xDA\xFF~\xC2\xD3\xFFA\x9F\xB6\xFF-\x8E\xA5\xFF*\x85\x9B\xFF'|\x91\xFF9\x80\x8B\xFFD}\\xFF+g\xFF\xB9\xE2\xB3\xFF\xC8\xEA\xB7\xFF\xEB\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB2]                                    \xFF\xFF\xCC\xEC\xFA\xB3\xDA\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEF\xFB\xC0\xFF\xDB\xF4\xD6\xFFy\xD0\xDA\xFF9\xAD\xC9\xFF;\x9A\xAD\xFF;\x9A\xAA\xFF-\x8E\xA6\xFF+\x86\x9D\xFF-\x82\x94\xFF\xB3ӧ\xFF\xCF\xE3\x98\xFF+a \xFFFv\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xD8\xFF\xFF\xBF                                        \xEB\xFB\xB3@\xEC\xFA\xB3\xFA\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFFzҿ\xFF5\xAC\xC8\xFF.\x8F\xA8\xFF\x87\xB4\x9A\xFF<o\xFF/n2\xFF\x8A\xBA\x9C\xFF\xA3ɤ\xFF\xDF\xF1\xB0\xFF\xA2\x!
 C0o\xFF+a \xFF\x9B\xBAh\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xF8\xED\xFB\xB4:                                                \xED\xFA\xB2c\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\x8BҾ\xFFI\xA0\xAD\xFF\xB0\x99\xFF\xE4\xF4\xB1\xFF:n\xFF+a \xFF\xBDԇ\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xC6ۏ\xFF\x86\xA9T\xFF\xEA\xF9\xB2\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3^                                                        \xEC\xFA\xB3n\xEC\xFA\xB3\xFB\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\x82\xA6P\xFF2g\xFF\xDB\xEC\xA3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFB\xEC\xFA\xB3l                                                                \xED\xFB\xB39\xEC\xFA\xB3\xD2\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEA\xF8\xB1\xFF\xDC\xEE\xA5\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xED\xFA\xB3\xCF\xEC\xFA\xB25                                                                        \xFF\xFF\xAA\xED\xFA\xB4b\xEB\xFA\xB4\xC4\xEC\xFA\xB3\xFC\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFF\xEC\xFA\xB3\xFC\xED\xFA\xB3\xC2\xEC\xFA\xB4_\xFF\xFF\x80                                                                                        \xF2\xFF\xAE\xED\xFB\xB5H\xED\xFA\xB2c\xEC\xFB\xB4w\xED\xFA\xB2c\xED\xFB\xB5H\xF1\xFF\xB8                                                                                                                                                                                                                                                                                                                                                                                                                                        \xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xF9\xFF\xFF\xFF!\xC3\xFF\xFE  ?\xFE  ?\xFC  ?\xF8  ?\xF0  \xE0  \xC0  \xC0  \xC0  \x80  \x80  \x80  \xC0  \xE0  \xFE!
   \xFE  \xFE  \xFF  \xFF  \xFF\x80 \xFF\xC0 \xFF\xE0 ?\xFF\xF0 \xFF\xFC\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF           \xA8                                                                                                                                                                       
\ No newline at end of file

Modified: trunk/Master/source/tlshell_UAC.zip
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/scripts/tlshell/tlshell.tcl
===================================================================
--- trunk/Master/texmf-dist/scripts/tlshell/tlshell.tcl	2018-12-06 02:12:43 UTC (rev 49330)
+++ trunk/Master/texmf-dist/scripts/tlshell/tlshell.tcl	2018-12-06 20:11:38 UTC (rev 49331)
@@ -75,9 +75,9 @@
   if $::ddebug {
     puts stderr $s
     # On windows, stderr output goes nowhere.
-    # Therefore also debug output for the log toplevel.
+    # Therefore also debug output for the log dialog.
     lappend ::dbg_log $s
-    # Track debug output in the log toplevel if it is running:
+    # Track debug output in the log dialog if it is running:
     if [winfo exists .tllg.dbg.tx] {
       .tllg.dbg.tx configure -state normal
       .tllg.dbg.tx insert end "$s\n"
@@ -134,33 +134,40 @@
 
   # wallpaper frame; see populate_main
   pack [ttk::frame .tlmg.bg] -fill both -expand 1
-  ppack [ttk::frame .tlmg.tx] -in .tlmg.bg -side top -fill both -expand 1
-  pack [ttk::scrollbar .tlmg.tx.scroll -command ".tlmg.tx.txt yview"] \
-      -side right -fill y
-  ppack [text .tlmg.tx.txt -height 20 -width 60 -bd 2 -relief groove \
-      -wrap word -yscrollcommand ".tlmg.tx.scroll set"] -expand 1 -fill both
 
-  .tlmg.tx.txt insert end $str
-  .tlmg.tx.txt configure -state disabled
-
   # buttons
   pack [ttk::frame .tlmg.bts] -in .tlmg.bg -side bottom -fill x
   if {$type eq "ok" || $type eq "okcancel"} {
-    ttk::button .tlmg.ok -text [__ "ok"] -command "end_dlg \"ok\" .tlmg"
+    ttk::button .tlmg.ok -text [__ "Ok"] -command "end_dlg \"ok\" .tlmg"
     ppack .tlmg.ok -in .tlmg.bts -side right
   }
   if {$type eq "yesnocancel"} {
-    ttk::button .tlmg.yes -text [__ "yes"] -command "end_dlg \"yes\" .tlmg"
+    ttk::button .tlmg.yes -text [__ "Yes"] -command "end_dlg \"yes\" .tlmg"
     ppack .tlmg.yes -in .tlmg.bts -side right
     ttk::button .tlmg.no -text [__ "no"] -command "end_dlg \"no\" .tlmg"
     ppack .tlmg.no -in .tlmg.bts -side right
   }
   if {$type eq "yesnocancel" || $type eq "okcancel"} {
-    ttk::button .tlmg.cancel -text [__ "cancel"] -command \
+    ttk::button .tlmg.cancel -text [__ "Cancel"] -command \
         "end_dlg \"cancel\" .tlmg"
     ppack .tlmg.cancel -in .tlmg.bts -side right
   }
+  if [winfo exists .tlmg.cancel] {
+    bind .tlmg <Escape> {.tlmg.cancel invoke}
+  } elseif {$type eq "ok"} {
+    bind .tlmg <Escape> {.tlmg.ok invoke}
+  }
 
+  ppack [ttk::frame .tlmg.tx] -in .tlmg.bg -side top -fill both -expand 1
+  pack [ttk::scrollbar .tlmg.tx.scroll -command ".tlmg.tx.txt yview"] \
+      -side right -fill y
+  ppack [text .tlmg.tx.txt -height 20 -width 60 -bd 2 -relief groove \
+      -wrap word -yscrollcommand ".tlmg.tx.scroll set"] -expand 1 -fill both
+
+  .tlmg.tx.txt insert end $str
+  .tlmg.tx.txt configure -state disabled
+
+  # default resizable
   place_dlg .tlmg $p
   tkwait window .tlmg
   return $::dialog_ans
@@ -186,122 +193,116 @@
 
 ### enabling and disabling user interaction
 
-proc enable_menu_controls {y_n} {
-  if {! $y_n} {
-    . configure -menu .mn_empty
-    return
+proc selective_dis_enable {} {
+  # disable actions which make no sense at the time
+
+  # buttons in the middle section
+  set pkg_buttons [list .mrk_inst .mrk_upd .mrk_rem .upd_tlmgr .upd_all]
+  foreach b [list .mrk_inst .mrk_upd .mrk_rem .upd_tlmgr .upd_all] {
+    $b state !disabled
   }
-  . configure -menu .mn
-  if {! $::n_updates} {
-    .mn.pkg entryconfigure $::inx_upd_all -state disabled
-    .mn.pkg entryconfigure $::inx_upd_tlmgr -state disabled
+  if $::do_restore {.mrk_rest state !disabled}
+
+  if {!$::have_remote} {
+    foreach b [list .mrk_inst .mrk_upd .upd_tlmgr .upd_all] {
+      $b state disabled
+    }
+  } elseif {!$::n_updates} {
+    foreach b [list .mrk_upd .upd_tlmgr .upd_all] {
+      $b state disabled
+    }
   } elseif $::need_update_tlmgr {
-    .mn.pkg entryconfigure $::inx_upd_all -state disabled
-    .mn.pkg entryconfigure $::inx_upd_tlmgr -state normal
-  } else {
-    .mn.pkg entryconfigure $::inx_upd_all -state normal
-    .mn.pkg entryconfigure $::inx_upd_tlmgr -state disabled
+    foreach b [list .mrk_inst .mrk_upd] {
+      $b state disabled
+    }
+  } elseif {!$::need_update_tlmgr} {
+    .upd_tlmgr state disabled
   }
+
+  # platforms menu item
   if {$::tcl_platform(platform) ne "windows"} {
-    if $::have_remote {
+    if {!$::have_remote || $::need_update_tlmgr}  {
+      .mn.opt entryconfigure $::inx_platforms -state disabled
+    } else {
       .mn.opt entryconfigure $::inx_platforms -state normal
-    } else {
-      .mn.opt entryconfigure $::inx_platforms -state disabled
     }
   }
-}; # enable_menu_controls
+}; # selective_dis_enable
 
-proc enable_widgets {y_n} {
+proc total_dis_enable {y_n} {
+  # to be invoked when tlmgr becomes busy or idle,, i.e.
+  # if it starts with a tlmgr command through run_cmds
+  # or read_line notices the command(s) ha(s|ve) ended.
   # This proc should cover all active interface elements of the main window.
   # But if actions are initiated via a dialog, the main window can be
   # deactivated by a grab and focus on the dialog instead.
-  enable_menu_controls $y_n
 
-  if $y_n {
-    set st !disabled
-    set ::busy [__ "IDLE"]
+  if {!$y_n} {
+    . configure -menu .mn_empty
+    foreach c [winfo children .] {
+      if {$c ne ".showlogs" && [winfo class $c] in \
+              [list TButton TCheckbutton TRadiobutton TEntry Treeview]} {
+        # this should cover all relevant widgets in the main window
+        $c state disabled
+      }
+    }
+    set ::busy [__ "Running"]
   } else {
-    set st disabled
-    set ::busy [__ "BUSY"]
+    . configure -menu .mn
+    foreach c [winfo children .] {
+      if {[winfo class $c] in \
+              [list TButton TCheckbutton TRadiobutton TEntry Treeview]} {
+        $c state !disabled
+      }
+    }
+    set ::busy [__ "Idle"]
+    selective_dis_enable
   }
+} ; # total_dis_enable
 
-  # command entry
-  .ent.b configure -state $st
-  .ent.e configure -state $st
-
-  # filter options
-  # status
-  .pkfilter.inst configure -state $st
-  .pkfilter.alls configure -state $st
-  .pkfilter.upd configure -state $st
-  # detail
-  .pkfilter.alld configure -state $st
-  .pkfilter.coll configure -state $st
-  .pkfilter.schm configure -state $st
-
-  # mark commands
-  .mrk_all configure -state $st
-  .mrk_none configure -state $st
-
-  # search
-  .pksearch.e configure -state $st
-  .pksearch.d configure -state $st
-
-  # packages
-  #.pkglist configure -state $st
-  .pkglist state $st
-
-  # final buttons
-  .q configure -state $st
-  .r configure -state $st
-  .t configure -state $st
-  .showlogs configure -state $st
-} ; # enable_widgets
-
 ##### tl global data ##################################################
 
-set last_cmd ""
+set ::last_cmd ""
 
-set progname [info script]
-regexp {^.*[\\/]([^\\/\.]*)(?:\....)?$} $progname dummy progname
-set procid [pid]
+set ::progname [info script]
+regexp {^.*[\\/]([^\\/\.]*)(?:\....)?$} $progname dummy ::progname
+set ::procid [pid]
 
 # package repositories
-array unset repos
+array unset ::repos
 
 # mirrors: dict of dicts of lists of urls per country per continent
-set mirrors {}
+set ::mirrors [dict create]
 
 # dict of (local and global) package dicts
-set pkgs [dict create]
+set ::pkgs [dict create]
 
-if {$::tcl_platform(platform) ne "windows"} {
-  set ::platforms [dict create]
-}
+# platforms
+set ::platforms [dict create]
 
-set have_remote 0 ; # remote packages info not yet loaded
-set need_update_tlmgr 0
-set n_updates 0
-set tlshell_updatable 0
+set ::have_remote 0 ; # remote packages info not yet loaded
+set ::need_update_tlmgr 0
+set ::n_updates 0
+set ::tlshell_updatable 0
 
 ## data to be displayed ##
 
 # sorted display data for packages; package data stored as lists
-set filtered [dict create]
+set ::filtered [dict create]
 
 # selecting packages for display: status and detail
-set stat_opt "inst"
-set dtl_opt "all"
+set ::stat_opt "inst"
+set ::dtl_opt "all"
 # searching packages for display; also search short descriptions?
-set search_desc 0
+set ::search_desc 0
 
 ##### handling tlmgr via pipe and stderr tempfile #####################
 
-set prmpt "tlmgr>"
-set busy [__ "BUSY"]
+set ::prmpt "tlmgr>"
+set ::busy [__ "Running"]
 
 # copy logs to log window yes/no
-set show_output 0
+set ::show_output 0
 
 # about [chan] gets:
 # if a second parameter, in this case l, is supplied
@@ -374,7 +375,7 @@
     if $::ddebug {puts $::flid $l}
     if {[string first $::prmpt $l] == 0} {
       # prompt line: we are done with the current command
-      enable_widgets 1 ; # this may have to be redone later
+      total_dis_enable 1 ; # this may have to be redone later
       # catch up with stderr
       read_err_tempfile
       if $::show_output {
@@ -394,8 +395,8 @@
   }
 } ; # read_line
 
-# copy error strings to error page in logs toplevel .tllg and send it to top.
-# This by itself does not map the logs toplevel .tllg
+# copy error strings to error page in logs dialog .tllg and send it to top.
+# This by itself does not map the logs dialog .tllg
 
 proc show_err_log {} {
   #do_debug "show_err_log"
@@ -436,6 +437,7 @@
   }
   .tllg.status configure -text [__ "Idle"]
   .tllg.close configure -state !disabled
+  bind .tllg <Escape> {.tllg.close invoke}
 }
 
 ##### running tlmgr commands #####
@@ -445,7 +447,6 @@
   set ::show_output $show
   do_debug "run_cmds \"$cmds\""
   if $::ddebug {puts $::flid "\n$cmds"}
-  enable_widgets 0
   set ::out_log {}
   set ::err_log {}
   if $show {
@@ -458,6 +459,10 @@
     set cmd [lindex $cmds $i]
     set ::last_cmd $cmd
     unset -nocomplain ::done_waiting
+    # disable widgets for each new command,
+    # since read_line will re-enable them
+    # when a particular command is finished
+    total_dis_enable 0
     chan puts $::tlshl $cmd
     chan flush $::tlshl
     if {$i < [expr {$l-1}]} {vwait ::done_waiting}
@@ -492,15 +497,17 @@
 
 # displayed global status info is updated by update_globals.
 # update button/menu states are set at initialization and updated
-# by update_globals, both via the enable_menu_controls proc
+# by update_globals, both via the selective_dis_enable proc
 
 # get_packages_info_local is invoked only once, at initialization.  After
 # installations and removals, the collected information is updated by
 # update_local_revnumbers.
+# Both procs also invoke get_platforms
 
 # get_packages_info_remote will be invoked by collect_filtered if
 # ::have_remote is false. Afterwards, ::have_remote will be true, and
 # therefore get_packages_info_remote will not be called again.
+# get_packages_info_remot also invokes get_platforms
 # get_packages_info_remote invokes update_globals.
 
 # update_local_revnumbers will be invoked after any updates. It also
@@ -552,7 +559,7 @@
     .topf.luptodate configure -text [__ "Unknown"]
   }
   # ... and status of update buttons
-  enable_menu_controls 1
+  selective_dis_enable
 }
 
 # The package display treeview widget in the main window has columns
@@ -646,6 +653,25 @@
   display_packages_info
 } ; # collect_filtered
 
+# derive the set of platforms from the dictionary of packages:
+# collect the values $plname from packages 'tex\.$plname'
+proc get_platforms {} {
+  # guarantee fresh start
+  foreach k $::platforms {dict unset ::platforms $k}
+  set ::platforms [dict create]
+  # glob-style matching: $k should start with "tex."
+  foreach k [dict keys $::pkgs "tex.*"] {
+    set plname [string range $k 4 end]
+    if {$plname eq ""} continue
+    set pl [dict create "cur" 0 "fut" 0]
+    if {[dict get $::pkgs $k "localrev"] > 0} {
+      dict set pl "cur" 1
+      dict set pl "fut" 1
+    }
+    dict set ::platforms $plname $pl
+  }
+}
+
 # get fresh package list. invoked at program start
 # some local packages may not be available online.
 # to test, create local dual-platform installation from dvd, try to update
@@ -676,6 +702,7 @@
                "rcatv" 0 "category" $catg shortdesc $pdescr]
     }
   }
+  get_platforms
 } ; # get_packages_info_local
 
 # remote: preserve information on installed packages
@@ -714,8 +741,9 @@
       dict set ::pkgs $nm "shortdesc" $pdescr
     }
   }
+  get_platforms
   set ::have_remote 1
-  .topf.loaded configure -text "Loaded"
+  .topf.loaded configure -text "Loaded" -foreground black
   update_globals
   return 1
 } ; # get_packages_info_remote
@@ -739,6 +767,7 @@
       dict set ::pkgs $pk $pk_dict
     }
   }
+  get_platforms
   update_globals
 } ; # update_local_revnumbers
 
@@ -746,7 +775,7 @@
 
 # if invoked via run_cmds, it tracks progress of (a) tlmgr command(s).
 # run_cmds will temporarily disable the close button
-# and set .tllg.status to busy via enable_widgets 0.
+# and set .tllg.status to busy via total_dis_enable 0.
 # otherwise, it shows the output of the last completed (list of) command(s).
 
 # Note that run_cmds clears ::out_log and ::err_log, but not ::dbg_log.
@@ -758,6 +787,14 @@
   # wallpaper
   pack [ttk::frame .tllg.bg] -fill both -expand 1
 
+  # close button and busy label
+  pack [ttk::frame .tllg.bottom] -in .tllg.bg -side bottom -fill x
+  ttk::button .tllg.close -text [__ "Close"] -command {end_dlg 0 .tllg}
+  ppack .tllg.close -in .tllg.bottom -side right -anchor e
+  ppack [ttk::label .tllg.status -anchor w] -in .tllg.bottom -side left
+  bind .tllg <Escape> {.tllg.close invoke}
+
+  # notebook pages and scrollbars
   ttk::frame .tllg.log
   pack [ttk::scrollbar .tllg.log.scroll -command ".tllg.log.tx yview"] \
       -side right -fill y
@@ -802,6 +839,7 @@
     .tllg.dbg.tx yview moveto 1
   }
 
+  # collect pages in notebook widget
   pack [ttk::notebook .tllg.logs] -in .tllg.bg -side top -fill both -expand 1
   .tllg.logs add .tllg.log -text [__ "Output"]
   .tllg.logs add .tllg.err -text [__ "Errors"]
@@ -812,13 +850,8 @@
   raise .tllg.err .tllg.logs
   raise .tllg.log .tllg.logs
 
-  pack [ttk::frame .tllg.bottom] -in .tllg.bg -side bottom -fill x
-  ttk::button .tllg.close -text [__ "Close"] -command {end_dlg 0 .tllg}
-  ppack .tllg.close -in .tllg.bottom -side right -anchor e
-  ppack [ttk::label .tllg.status -anchor w] -in .tllg.bottom -side left
-
+  # default resizable
   place_dlg .tllg .
-  wm resizable .tllg 1 1
 } ; # show_logs
 
 ##### repositories ###############################################
@@ -1073,7 +1106,7 @@
 # main repository dialog
 proc repository_dialog {} {
 
-  # dialog toplevel with
+  # dialog with
   # - popup menu of mirrors (parse tlpkg/installer/ctan-mirrors.pl)
   # - text entry box
   # - directory browser button
@@ -1085,7 +1118,7 @@
   # wallpaper frame; see populate_main
   pack [ttk::frame .tlr.bg] -expand 1 -fill x
 
-  pack [ttk::frame .tlr.info] -in .tlr.bg -fill x
+  pack [ttk::frame .tlr.info] -in .tlr.bg -expand 1 -fill x
   grid columnconfigure .tlr.info 1 -weight 1
   set row -1
 
@@ -1099,8 +1132,8 @@
   incr row
   pgrid [ttk::label .tlr.lnew -text [__ "New"]] \
       -in .tlr.info -row $row -column 0 -sticky w
-  pgrid [ttk::entry .tlr.new -width 40] \
-      -in .tlr.info -row $row -column 1 -columnspan 2 -sticky w
+  pgrid [ttk::entry .tlr.new] \
+      -in .tlr.info -row $row -column 1 -columnspan 2 -sticky ew
 
   ### three ways to specify a repository ###
   pack [ttk::frame .tlr.mirbuttons] -in .tlr.bg -fill x
@@ -1173,9 +1206,10 @@
   ppack .tlr.save -in .tlr.closebuttons -side right
   ttk::button .tlr.abort -text [__ "Abort"] -command {end_dlg "" .tlr}
   ppack .tlr.abort -in .tlr.closebuttons -side right
+  bind .tlr <Escape> {.tlr.abort invoke}
 
+  wm resizable .tlr 1 0
   place_dlg .tlr .
-  wm resizable .tlr 0 0
 } ; # repository_dialog
 
 ### platforms
@@ -1182,8 +1216,6 @@
 
 if {$::tcl_platform(platform) ne "windows"} {
 
-  # the ::platforms dict has been created earlier
-
   proc toggle_pl_marked {pl cl} {
     # toggle_pl_marked is triggered by a mouse click only in column #1.
     # 'fut'[ure] should get updated in ::platforms _and_ in .tlpl.pl.
@@ -1246,19 +1278,6 @@
 
   # the platforms dialog
   proc platforms_select {} {
-    run_cmd_waiting "platform list"
-    set ::platforms {}
-    foreach l $::out_log {
-      if [regexp {^\s+(\S+)$} $l m p] {
-        dict set ::platforms $p {}
-        dict set ::platforms $p "cur" 0
-        dict set ::platforms $p "fut" 0
-      } elseif [regexp {^\(i\)\s+(\S+)$} $l m p] {
-        dict set ::platforms $p {}
-        dict set ::platforms $p "cur" 1
-        dict set ::platforms $p "fut" 1
-      }
-    }
     create_dlg .tlpl
     wm title .tlpl [__ "Platforms"]
     if $::plain_unix {wm attributes .tlpl -type dialog}
@@ -1266,14 +1285,26 @@
     # wallpaper frame
     pack [ttk::frame .tlpl.bg] -expand 1 -fill both
 
+    # buttons
+    pack [ttk::frame .tlpl.but] -in .tlpl.bg -side bottom -fill x
+    ttk::button .tlpl.do -text [__ "Apply and close"] -command {
+      platforms_commit; end_dlg "" .tlpl
+    }
+    ttk::button .tlpl.dont -text [__ "Close"] -command \
+        {end_dlg "" .tlpl}
+    ppack .tlpl.do -in .tlpl.but -side right
+    .tlpl.do configure -state disabled
+    ppack .tlpl.dont -in .tlpl.but -side right
+    bind .tlpl <Escape> {.tlpl.dont invoke}
+
     # platforms treeview; do we need a scrollbar?
     pack [ttk::frame .tlpl.fpl] -in .tlpl.bg -fill both -expand 1
     ttk::treeview .tlpl.pl -columns {sup plat} -show headings \
-        -height [dict size $::platforms] ; # -yscrollcommand {.tlpl.plsb set}
+        -height [dict size $::platforms] -yscrollcommand {.tlpl.plsb set}
     ppack .tlpl.pl -in .tlpl.fpl -side left -fill both -expand 1
-    #ttk::scrollbar .tlpl.plsb -orient vertical \
-    #    -command {.tlpl.pl yview}
-    #ppack .tlpl.plsb -in .tlpl.fpl -side right -fill y -expand 1
+    ttk::scrollbar .tlpl.plsb -orient vertical \
+        -command {.tlpl.pl yview}
+    ppack .tlpl.plsb -in .tlpl.fpl -side right -fill y -expand 1
     #.tlpl.pl heading sup -text ""
     .tlpl.pl column sup -width [expr {$::cw * 8}]
     .tlpl.pl heading plat -text [__ "platform"] -anchor w
@@ -1292,19 +1323,8 @@
              [.tlpl.pl identify item %x %y] \
              [.tlpl.pl identify column %x %y]}
 
-    # buttons
-    pack [ttk::frame .tlpl.but] -in .tlpl.bg -fill x
-    ttk::button .tlpl.do -text [__ "Apply and close"] -command {
-      platforms_commit; end_dlg "" .tlpl
-    }
-    ttk::button .tlpl.dont -text [__ "Close"] -command \
-        {end_dlg "" .tlpl}
-    ppack .tlpl.do -in .tlpl.but -side right
-    .tlpl.do configure -state disabled
-    ppack .tlpl.dont -in .tlpl.but -side right
-
+    wm resizable .tlpl 0 1
     place_dlg .tlpl .
-    wm resizable .tlpl 0 0
   } ; # platforms_select
 
 } ; # $::tcl_platform(platform) ne "windows"
@@ -1313,6 +1333,7 @@
 
 # This is currently rather dangerous.
 # ::do_restore is set to 0 or 1 near the top of this source.
+# This code, currently disbled, has not been tested in a while.
 
 if $::do_restore {
 # dictionary of backups, with mapping to list of available revisions
@@ -1328,7 +1349,7 @@
 proc finish_restore {} {
   vwait ::done_waiting
   # now log_widget_finish should have run and re-enabled its close button.
-  # We won't wait for the log toplevel to close, but we will
+  # We won't wait for the log dialog to close, but we will
   # update the packages display in the main window.
   update_local_revnumbers
   collect_filtered
@@ -1508,16 +1529,25 @@
 } ; # update_tlmgr
 
 proc update_all {} {
+  set updated_tlmgr 0
   if $::need_update_tlmgr {
-    tk_messageBox -message [__ "Update self first!"]
-    return
-  } elseif {! $::n_updates} {
+    run_cmd "update --self" 1
+    vwait ::done_waiting
+    # tlmgr restarts itself automatically
+    update_local_revnumbers
+    set updated_tlmgr 1
+  }
+  # tlmgr restarts itself automatically
+  #  tk_messageBox -message [__ "Update self first!"]
+  #  return
+  if {! $::n_updates && !$updated_tlmgr} {
     tk_messageBox -message [__ "Nothing to do!"]
     return
+  } elseif $::n_updates {
+    run_cmd "update --all" 1
+    vwait ::done_waiting
+    update_local_revnumbers
   }
-  run_cmd "update --all" 1
-  vwait ::done_waiting
-  update_local_revnumbers
   collect_filtered
 } ; # update_all
 
@@ -1575,6 +1605,7 @@
     show_err_log
   }
   update_local_revnumbers
+  if {$sel_opt eq "marked"} {mark_all 0}
   collect_filtered
 } ; # install_pkgs
 
@@ -1615,7 +1646,7 @@
        "yesnocancel"]
     switch $ans {
       "cancel" return
-      "yes" {run_cmd "update $todo"} 1
+      "yes" {run_cmd "update $todo" 1}
       "no" {
         set deps {}
         run_cmd_waiting "update --dry-run --no-depends $todo"
@@ -1647,6 +1678,7 @@
     show_err_log
   }
   update_local_revnumbers
+  if {$sel_opt eq "marked"} {mark_all 0}
   collect_filtered
 } ; # update_pkgs
 
@@ -1707,6 +1739,7 @@
     show_err_log
   }
   update_local_revnumbers
+  if {$sel_opt eq "marked"} {mark_all 0}
   collect_filtered
 } ; # remove_pkgs
 
@@ -1715,16 +1748,6 @@
 
 ##### varous callbacks #####
 
-proc run_entry {} {
-  # TODO: some validation of $cmd
-  do_debug "run_entry"
-  set cmd [.ent.e get]
-  if {$cmd eq ""} return
-  do_debug $cmd
-  .ent.e delete 0 end
-  run_cmd $cmd 1
-}
-
 proc restart_self {} {
   do_debug "trying to restart"
   if {$::progname eq ""} {
@@ -1766,14 +1789,6 @@
   # alternatively: regenerate ::filtered and .pkglist from ::pkgs
 } ; # mark_all
 
-proc toggle_search_desc {} {
-  # when this proc is called, ::search_desc is not yet toggled
-  # so we temporarily pre-toggle and post-untoggle it
-  set ::search_desc [expr {$::search_desc ? 0 : 1}]
-  display_packages_info
-  set ::search_desc [expr {$::search_desc ? 0 : 1}]
-}
-
 ##### package popup #####
 
 proc do_package_popup_menu {x y X Y} {
@@ -1882,12 +1897,43 @@
   log_widget_init
 }
 
+proc show_help {} {
+  set ::env(NOPERLDOC) 1
+  long_message [exec tlmgr --help] ok
+}
+
+proc run_entry {} {
+  # TODO: some validation of $cmd
+  set cmd [.tlcust.e get]
+  if {$cmd eq ""} return
+  run_cmd $cmd 1
+  end_dlg "" .tlcust
+}
+
+## arbitrary commands: no way to know what data have to be updated
+#proc custom_command {} {
+#  create_dlg .tlcust .
+#  wm title .tlcust [__ "Custom command"]
+#  pack [ttk::frame .tlcust.bg] -expand 1 -fill x
+#
+#  ppack [ttk::entry .tlcust.e] \
+#      -in .tlcust.bg -side left -fill x -expand 1
+#  ppack [ttk::button .tlcust.b -text [__ "Go"] -command run_entry] \
+#      -in .tlcust.bg -side left
+#  bind .tlcust.e <Return> run_entry
+#  bind .tlcust <Escape> {end_dlg "" .tlcust}
+#  wm .tlcust resizable 1 0
+#  place_dlg .tlcust .
+#}
+
 ##### main window #####
 
 proc populate_main {} {
 
-  wm title . "$::progname $::procid"
+  wm withdraw .
 
+  wm title . "TeX Live Shell"
+
   # width of '0', as a rough estimate of average character width
   set ::cw [font measure TkTextFont "0"]
 
@@ -1926,31 +1972,10 @@
   # inx: keeping count to record indices where needed,
   # i.e. when an entry needs to be referenced.
   # not all submenus need this.
-  .mn add cascade -label [__ "Packages"] -menu .mn.pkg
-  menu .mn.pkg
-  set inx 0
-  set ::inx_upd_tlmgr $inx
-  .mn.pkg add command -label [__ "Update tlmgr"] -command update_tlmgr
-  incr inx
-  set ::inx_upd_all $inx
-  .mn.pkg add command -label [__ "Update all"] -command update_all
-  incr inx
-  .mn.pkg add command -label [__ "Install marked"] \
-      -command {install_pkgs "marked"}
-  incr inx
-  .mn.pkg add command -label [__ "Update marked"] \
-      -command {update_pkgs "marked"}
-  incr inx
-  .mn.pkg add command -label [__ "Remove marked"] \
-      -command {remove_pkgs "marked"}
-  if $::do_restore {
-    incr inx
-    .mn.pkg add command -label [__ "Restore from backup..."] \
-        -command restore_backups_dialog
-  }
 
   .mn add cascade -label [__ "Actions"] -menu .mn.act -underline 0
   menu .mn.act
+  incr inx
   .mn.act add command -label [__ "Regenerate filename database"] -command \
       {run_external "mktexlsr" [__ "Regenerating filename database..."]}
   .mn.act add command -label [__ "Regenerate formats"] -command \
@@ -1957,13 +1982,19 @@
       {run_external "fmtutil-sys --all" [__ "Rebuilding formats..."]}
   .mn.act add command -label [__ "Regenerate fontmaps"] -command \
       {run_external "updmap-sys" [__ "Rebuilding fontmap files..."]}
+  #.mn.act add command -label [__ "Custom command"] -command custom_command
 
   .mn add cascade -label [__ "Options"] -menu .mn.opt -underline 0
+
   menu .mn.opt
-  .mn.opt add command -label [__ "Repositories"] \
+  set inx -1
+  incr inx
+  .mn.opt add command -label "[__ "Repositories"]..." \
       -command repository_dialog
 
+  incr inx
   .mn.opt add cascade -label [__ "Paper"] -menu .mn.opt.paper
+  incr inx
   menu .mn.opt.paper
   foreach p [list a4 letter] {
     .mn.opt.paper add command -label $p -command "set_paper $p"
@@ -1970,7 +2001,9 @@
   }
 
   if {[llength $::langs] > 1} {
-    .mn.opt add cascade -label [__ "GUI language"] -menu .mn.opt.lang
+    incr inx
+    .mn.opt add cascade -label [__ "GUI language (restarts shell)"] \
+        -menu .mn.opt.lang
     menu .mn.opt.lang
     foreach l $::langs {
       .mn.opt.lang add command -label $l -command "set_language $l"
@@ -1980,14 +2013,19 @@
   if {$::tcl_platform(platform) ne "windows"} {
     incr inx
     set ::inx_platforms $inx
-    .mn.opt add command -label [__ "Platforms"] -command platforms_select
+    .mn.opt add command -label "[__ "Platforms"]..." -command platforms_select
   }
 
   .mn add cascade -label [__ "Help"] -menu .mn.help -underline 0
   menu .mn.help
-  .mn.help add command -command {tk_messageBox -message "Helpless"} \
-      -label "About"
+  .mn.help add command -label [__ "About"] -command {
+    tk_messageBox -message [__ "\u00a9 2017, 2018 Siep Kroonenberg
 
+GUI interface for TeX Live Manager
+Implemented in Tcl/Tk
+"]}
+  .mn.help add command -label [__ "tlmgr help"] -command show_help
+
   # wallpaper frame
   # it is possible to set a background color for a toplevel, but on
   # MacOS I did not find a way to determine the right $::default_bg
@@ -1995,17 +2033,34 @@
   # with the default ttk::frame color, which seems to work
   # everywhere.
   pack [ttk::frame .bg] -expand 1 -fill both
+  .bg configure -padding 5
 
+  # bottom of main window
+  pack [ttk::frame .endbuttons] -in .bg -side bottom -fill x
+  ttk::label .busy -textvariable ::busy -font TkHeadingFont -anchor w
+  ppack .busy -in .endbuttons -side left
+  ppack [ttk::button .q -text [__ Quit] -command {destroy .}] \
+      -in .endbuttons -side right
+  ppack [ttk::button .r -text [__ "Restart self"] -command restart_self] \
+      -in .endbuttons -side right
+  ppack [ttk::button .t -text [__ "Restart tlmgr"] \
+             -command {close_tlmgr; start_tlmgr}] \
+      -in .endbuttons -side right
+  ttk::button .showlogs -text [__ "Show logs"] -command show_logs
+  ppack .showlogs -in .endbuttons -side right
+
   # various info
-  ttk::frame .topf
-  pack .topf -in .bg -side top -anchor w
+  # frame .topf -background white -borderwidth 2 -relief sunken
+  ppack [ttk::frame .topf] -in .bg -side top -anchor w -fill x
+  pack [ttk::separator .sp -orient horizontal] \
+      -in .bg -side top -fill x -pady 6
 
-  pgrid [ttk::label .topf.llrepo -text [__ "Default repositories"] -anchor w] \
-      -row 0 -column 0 -sticky nw
-  pgrid [ttk::label .topf.lrepos -text ""] \
-      -row 0 -column 1 -sticky nw
-  pgrid [ttk::label .topf.loaded -text [__ "Not loaded"]] \
-      -row 1 -column 1 -sticky w
+  ttk::label .topf.llrepo -text [__ "Default repositories"] -anchor w
+  pgrid .topf.llrepo -row 0 -column 0 -sticky nw
+  ttk::label .topf.lrepos -text "" -justify left -anchor w
+  pgrid .topf.lrepos -row 0 -column 1 -sticky nw
+  ttk::label .topf.loaded -text [__ "Not loaded"] -foreground red -anchor w
+  pgrid .topf.loaded -row 1 -column 1 -sticky w
 
   ttk::label .topf.lluptodate -text [__ "TL Manager up to date?"] -anchor w
   pgrid .topf.lluptodate -row 2 -column 0 -sticky w
@@ -2012,26 +2067,20 @@
   ttk::label .topf.luptodate -text [__ "Unknown"] -anchor w
   pgrid .topf.luptodate -row 2 -column 1 -sticky w
 
-  pgrid [ttk::label .topf.llcmd -anchor w -text [__ "Last tlmgr command:"]] \
-      -row 3 -column 0 -sticky w
-  pgrid [ttk::label .topf.lcmd -anchor w -textvariable ::last_cmd] \
-      -row 3 -column 1 -sticky w
+  ttk::label .topf.llcmd -anchor w -text [__ "Last tlmgr command:"] -anchor w
+  pgrid .topf.llcmd -row 3 -column 0 -sticky w
+  ttk::label .topf.lcmd -anchor w -textvariable ::last_cmd -anchor w
+  pgrid .topf.lcmd -row 3 -column 1 -sticky w
 
-  # command entry widget
-  ttk::frame .ent
-         ppack [ttk::label .ent.l -text [__ "Type command:"]] -side left
-  ppack [ttk::entry .ent.e -width 40] -side left -padx 3
-         ppack [ttk::button .ent.b -text [__ "Go"] -command run_entry] \
-             -side left
-  bind .ent.e <Return> run_entry
-  pack .ent -pady 10 -in .bg -fill x -side top
-
   # package list
   ttk::label .lpack -text [__ "Package list"] -font TkHeadingFont -anchor w
-  ppack .lpack -in .bg -side top -fill x
+  pack .lpack -in .bg -side top -padx 3 -pady [list 15 3] -fill x
 
   # controlling package list
   ttk::frame .pkfilter
+  pack .pkfilter -in .bg -side top -fill x
+  grid columnconfigure .pkfilter 3 -weight 1
+  # column #3 is empty, but that is allright
   # filter on status: inst, all, upd
   ttk::label .pkfilter.lstat -font TkHeadingFont -text [__ "Status"]
   ttk::radiobutton .pkfilter.inst -text [__ "Installed"] -value inst \
@@ -2046,7 +2095,7 @@
   pgrid .pkfilter.upd -column 0 -row 3 -sticky w
 
   # filter on detail level: all, coll, schm
-  ttk::label .pkfilter.ldtl -font TkHeadingFont -text [__ "Global >> Detail"]
+  ttk::label .pkfilter.ldtl -font TkHeadingFont -text [__ "Detail >> Global"]
   ttk::radiobutton .pkfilter.alld -text [__ All] -value all \
       -variable ::dtl_opt -command collect_filtered
   ttk::radiobutton .pkfilter.coll -text [__ "Collections and schemes"] \
@@ -2064,42 +2113,67 @@
   grid [ttk::button .mrk_none -text [__ "Mark none"] -command {mark_all 0}] \
       -in .pkfilter -column 2 -row 2 -sticky w -padx {50 3} -pady 3
 
-  pack .pkfilter -in .bg -side top -fill x
+  # actions
+  set rw -1
+  incr rw
+  ttk::button .mrk_inst -text [__ "Install marked"] -command {
+      install_pkgs "marked"}
+  pgrid .mrk_inst -in .pkfilter -column 4 -row $rw -sticky ew
+  incr rw
+  ttk::button .mrk_upd -text [__ "Update marked"] -command {
+    update_pkgs "marked"}
+  pgrid .mrk_upd -in .pkfilter -column 4 -row $rw -sticky ew
+  incr rw
+  ttk::button .mrk_rem -text [__ "Remove marked"] -command {
+    remove_pkgs "marked"}
+  pgrid .mrk_rem -in .pkfilter -column 4 -row $rw -sticky ew
+  if $::do_restore {
+    incr rw
+    ttk::button .mrk_rest -text [__ "Restore from backup..."] -command \
+        restore_backups_dialog
+    pgrid .mrk_rest -in .pkfilter -column 4 -row $rw -sticky ew
+  }
+  incr rw
+  ttk::button .upd_tlmgr -text [__ "Update tlmgr"] -command update_tlmgr
+  pgrid .upd_tlmgr -in .pkfilter -column 4 -row $rw -sticky ew
+  incr rw
+  ttk::button .upd_all -text [__ "Update all"] -command update_all
+  pgrid .upd_all -in .pkfilter -column 4 -row $rw -sticky ew
 
-  # search interface
-  pack [ttk::frame .pksearch] -in .bg -side top -fill x
+  # search interface; no new row
+  grid [ttk::frame .pksearch] -in .pkfilter -row $rw \
+      -column 0 -columnspan 4 -sticky w
   ppack [ttk::label .pksearch.l \
-             -text [__ "Search package names"]] -side left
+             -text [__ "Search"]] -side left
   pack [ttk::entry .pksearch.e -width 30] -side left -padx {3 0} -pady 3
-  ppack [ttk::checkbutton .pksearch.d -variable ::search_desc \
-             -text [__ "Also search short descriptions"]] -side left
+  ppack [ttk::radiobutton .pksearch.n -variable ::search_desc \
+            -value 0 -text [__ "By name"]] -side left
+  ppack [ttk::radiobutton .pksearch.d -variable ::search_desc \
+             -value 1 -text [__ "By name and description"]] -side left
   bind .pksearch.e <KeyRelease> display_packages_info
-  bind .pksearch.d <ButtonRelease> toggle_search_desc
+  bind .pksearch.n <ButtonRelease> {set ::search_desc 0; display_packages_info}
+  bind .pksearch.d <ButtonRelease> {set ::search_desc 1; display_packages_info}
 
-  # packages list
+  # packages list itself
   pack [ttk::frame .fpkg] -in .bg -side top -fill both -expand 1
   ttk::treeview .pkglist -columns \
       {mk name localrev remoterev shortdesc} \
       -show headings -height 8 -selectmode extended \
-      -xscrollcommand {.pkhsb set} -yscrollcommand {.pkvsb set}
+      -yscrollcommand {.pkvsb set}
   .pkglist heading mk -text "" -anchor w
   .pkglist heading name -text [__ "Name"] -anchor w
   .pkglist heading localrev -text [__ "Local Rev. (ver.)"] -anchor w
   .pkglist heading remoterev -text [__ "Remote Rev. (ver.)"] -anchor w
   .pkglist heading shortdesc -text [__ "Description"] -anchor w
-  .pkglist column mk -width [expr {$::cw * 3}]
-  .pkglist column name -width [expr {$::cw * 25}]
-  .pkglist column localrev -width [expr {$::cw * 18}]
-  .pkglist column remoterev -width [expr {$::cw * 18}]
-  .pkglist column shortdesc -width [expr {$::cw * 50}]
+  .pkglist column mk -width [expr {$::cw * 3}] -stretch 0
+  .pkglist column name -width [expr {$::cw * 25}] -stretch 1
+  .pkglist column localrev -width [expr {$::cw * 18}] -stretch 0
+  .pkglist column remoterev -width [expr {$::cw * 18}] -stretch 0
+  .pkglist column shortdesc -width [expr {$::cw * 50}] -stretch 1
 
-  ttk::scrollbar .pkhsb -orient horizontal -command {.pkglist xview}
   ttk::scrollbar .pkvsb -orient vertical -command {.pkglist yview}
-  pgrid .pkglist -in .fpkg -row 0 -column 0 -sticky news
-  grid .pkvsb -in .fpkg -row 0 -column 1 -sticky ns
-  grid .pkhsb -in .fpkg -row 1 -column 0 -sticky ew
-  grid columnconfigure .fpkg 0 -weight 1
-  grid rowconfigure .fpkg 0 -weight 1
+  ppack .pkglist -in .fpkg -side left -expand 1 -fill both
+  ppack .pkvsb -in .fpkg -side left -fill y
 
   # "#1" refers to the first column (with mark symbols)
   bind .pkglist <space> {toggle_marked_pkg [.pkglist focus] "#1"}
@@ -2114,20 +2188,10 @@
     bind .pkg_popup <Leave> {.pkg_popup unpost}
   }
 
-  # bottom of main window
-  pack [ttk::frame .endbuttons] -in .bg -side bottom -fill x
-  ttk::label .busy -textvariable ::busy -font TkHeadingFont -anchor w
-  ppack .busy -in .endbuttons -side left
-  ppack [ttk::button .q -text [__ Quit] -command {destroy .}] \
-      -in .endbuttons -side right
-  ppack [ttk::button .r -text [__ "Restart self"] -command restart_self] \
-      -in .endbuttons -side right
-  ppack [ttk::button .t -text [__ "Restart tlmgr"] \
-             -command {close_tlmgr; start_tlmgr}] \
-      -in .endbuttons -side right
-  ttk::button .showlogs -text [__ "Show logs"] -command show_logs
-  ppack .showlogs -in .endbuttons -side right
-} ; # populate_main
+  wm protocol . WM_DELETE_WINDOW {.q invoke}
+  wm resizable . 1 1
+  wm state . normal
+}
 
 ##### initialize ######################################################
 
@@ -2197,7 +2261,7 @@
   .topf.lrepos configure -text [print_repos]
   get_packages_info_local
   collect_filtered ; # invokes display_packages_info
-  enable_menu_controls 1
+  selective_dis_enable
 }; # initialize
 
 initialize

Modified: trunk/Master/tlpkg/tltcl/tltcl.tcl
===================================================================
--- trunk/Master/tlpkg/tltcl/tltcl.tcl	2018-12-06 02:12:43 UTC (rev 49330)
+++ trunk/Master/tlpkg/tltcl/tltcl.tcl	2018-12-06 20:11:38 UTC (rev 49331)
@@ -258,12 +258,12 @@
   [expr {max([font measure TkDefaultFont "0"],[font measure TkTextFont "0"])}]
 
 # icon
+catch {
+  image create photo tl_logo -file \
+      [file join $::instroot "tlpkg" "tltcl" "tlmgr.gif"]
+  wm iconphoto . -default tl_logo
+}
 
-image create photo tl_logo -file \
-    [file join $::instroot "tlpkg" "tltcl" "tlmgr.gif"]
-
-wm iconphoto . -default tl_logo
-
 # default foreground color and disabled foreground color
 # may not be black in e.g. dark color schemes
 set blk [ttk::style lookup TButton -foreground]
@@ -349,6 +349,10 @@
 } ; # place_dlg
 
 proc end_dlg {ans wnd} {
+  foreach c [winfo children $wnd] {
+    # alternative to catch: check type with [winfo class $wnd]
+    catch {$c state disabled}
+  }
   set ::dialog_ans $ans
   set p [winfo parent $wnd]
   if {$p eq ""} {set p "."}



More information about the tex-live-commits mailing list