This is a little larger than the normal posts on this list. Some of
this code shows promise of being useful, but it still needs quite a
bit of spit and polish in my eyes. I'm only posting it here because
other items in the hacks queue use it.
begin 644 MetaPy-6.tar.gz
M'XL(".-)$3P"`TUE=&%0>2TV+G1A<@#L7&USV\B1]F?\BHE4+I(VQ14E>WU+
MQ9LHCKW1Q=Y56=I+MEPN%D@,)<0@P&``2=RK^^_W=/?,8`"2DO=NDWLILV2+
M',ST]/1[]S3U3E?Q^?K@ZZ\>_>->AX?/CEX\?X[?A^,7SP_#W^[UZ/#%,\QZ
M]NS%L^-'A^/QB^.O'ZGGC_X)K]I4<:G4HT]E?*7SW?,>>OY_]/7.\5_>?/6_
M@__'X^/G7_C_/\'_L[S2Y:K(XBHM\M%J_:OP?WQX^/6S9[OX_V)\>,S\/WYQ
M?/SUUY"3\=?'QR\>J<,O_/^'O_;V]KHLGZAF1*NXG*55&9=KI>]6I38&DXQ*
M\ZI0IBK3_,J,`".:3N?%:EVF5]?5=*I>*HR]<@.J_VJ@CL!TI?[,5%07:15_
MTF4475ZG1JW*XJJ,EPIO%Z76RA2+ZC8N]8E:%[6:Q[DJ=9+2;K,:&*65BO/D
MJZ)4RR))%^L(`W6>Z%)5UUH!\Z51Q8(_?/?]C^H[G>LRSM1Y/B2SJ^.W`86VE`59=2/
M*T*X5,6*%@V`Y5H1#?VZT>:!FW,E("K#O"Y6.,8UH.%@MVF6J9E6M=&+.AM&
MF*G^<"V8'J);`CJ29P5%_`O,,4,H2=1W?:#!QKM,;
M(!0KDI6'>13%69%?\<$PLZ';B4H7*B^JH;HM4P@$1'>U'#O2'D>3X:JN??
MJ$L-FFAUGL5S\.RBIM7'QX=#]8?"5#3SW:E2AT?C\?A@?'SX0JD?+TXC.0F)
MX;S(JWA>\6YQ#7*7PXY$#Q78)J;B]ZMB5MR-YL62I`/C4=21_N?_\NQ0O8JS
M%,3+TUA=5-$%=GD#;LU3,R^&ZM6I^N;9^&@
M+/W$:C9GYBV!K`@V30,O2]:U0I0.YC-/2"&C90RK@']#XHW2L4EU"3%XC=TM
MJ4KL&6)TRTU2)Q$&@!JJ)%Q!LQ.E.:%7I5B=G(@,X4=T"5HUC_&6#III($#&9D4*
MU+)S;!B6:9)`;B"Q%H6A)>/Y&BCF/:,>0^LAPE5!1_[1@,^`$Y.T3:)OO_U6
M[8W!K#'M_KC/;P=F#XL(X?X@ZOFG1[U&W.+,%(2L(`Z#A;$TUXM%.D^)GZ:>
M&="*6$[J1X@661+MF6*I!4_:(BOF`-0?@''S3\0V$%B=ZS([,-4:A[J)RS2>
MX4W:\@.1DSD1=#'J;0%6O^U*^K?L",A:5\:Y@;/?#OXU-C"A
M?RR6:5X;D(YP$>0ZGF@YBLCR7%?5:O+55R!O-EIE!6PI;?7560(:I#!K)'N[
MYH0`F4C6/*F"1`@"-^)C[N.D,)=%":*N312)I!)S)I'"*]$+2&::IW!N?:.S
MQ5!=9<4,='WY?9'#E`B1[8<\@PW&I_%`5M.+_&&I68K!12O2P$>$%=1V$R]!
M66-="(0Y+J_J)0YJW(9NKR&=VVT5K+?3^*G,5"E3:K%F"9'GS6,%0[/2+.D.
MQ.UU.K\F27&:%ZH$W('=%*XVP__7Q2U,!+DZ'O50ZA7O!P44LH5N[`38D!<9Q5IR#@X[-F"M=9`HCU2!2Q-7B]GD,\KICAI
M!F@^'OIP`CKE07C=4I=SIQ*]>L70>L%6)";N_7YOO_D`W-V)`(DD@,R].YB,
M-')`+WTWU\Q?*$B_]<1N=`:?9\CGD5V[9>1FNJ*3W,9KI\++-@&E)!A9+*[)$).NZ<='*ZT$XA;TV@!!
M,4(%HW5P<$"'X/4[$'O06E&5Z\D&B#).C6[8MH69SQC!VGWF
M.N01><@*HE3QR1\'QMF'#=8^DWR!#*6NZE(,;I^&ABT4AN&.`[^3A`F(-F=P
MC&ME(,HVH@*AY['A<(AVH#@#>H#XG#THWI).02DL*!N*D.[8Z(=U+E$]\BT]
M!+":M,3:I=#7T+P=9Z&Q#S3T,8KV%=F('ODS+9A),&0-&!T#MB]91P0UT;/Z
M:H6XH.HWVF=]%`^KO<=FHAYS9!),&4J8XMS:T2!?7G]/ZK_5!3%ZE^I
M\O,Y]9_CY\=CJ?\=/G_VXCG-&S\?'QY]J?_\L^H_GN43F\^(,T$:2$]LI$;^
M`XEUH5XFC.&2E(>E\.YE.%+*>A+*>A+*>@?6`K:W_L5$O/SU^?JZ/@9
MI<).D0TEZ7^.#\XI6/\)-"3-_ZY.D^(DXNF'/+UM'D81TOKYP6F>@.=O]7)6
MEUSAE]4
M>A7GQ0WC^$X#X;=:A(]$@3,4\.:"RE,`+_R&!D9OTQF5LX>$D>0.5"\1$93`
M;X8X*K$%$*;T?66W55WJ`VLV883J#-(D8,F&U8@<88<,Z33A>5N4GS@1RJVI
MC<:CYZ,C?G8T&H^0I/I:E$@T$X!+7K$""P[N[NX.N#ZWB,TUBS2.'-E:TY!L
MV?L/D.+1"&(^/ORHJ`2FXX3.)RG">#P8DOK]I_!4%V`/!/&;21R%SR`9J2FFE&&1-CGOH$)`J
MV`)&P5`DGN8ZB8A95E?\CK1@P(?5X9(J.#N"9"3.\)XENYA%D67%K9E$T7O.
M1>6@RA^4S#GB\P.0+-]V;,/'&2ZJ]P(@,D_.=C;D!3D;_
MO=8YB/:4@5PFO()<;KF(Y;AD,'G]GD96X'Y,#;;
M7LUA"/JT*J8(*RK>9.[*?XJ'%F6Q9.)2:4.S0TOJN91)X^9$#&<5EU4*@:^7
M#(G5_^+RK;+C4SPX0?A`A6$JDE'E[@[&+D64P?S5);2&5O([*>A0D$%[0'CL
M=1X0@X\%>SJ/&TOH"J.-NDGRB,>GX`LGRVVAAABS%#F33*I"6XA$V_+:IR(C'M&C*RD^B=%CDP>AHD]'[8$)WHUH,VBH'(,J3F)J8P:Q
M+<0-+0A7RO-*M(*J2.*FP#FJK''H2>C0Y.1]X1_G899[_/Y`-[XFV>T!+B
M35J:2G28A84$H2DAL&VIUBM](I5!G_5318'7>W-HX;V'S]HTD?V!)WL>.!J.
M5SUIR7IP*5,L@!@O8H(<6I,=XRU"9V-'QFZH-?)-=Q`<&3<3)@=C_'STJ*D%
M$\/2^(JCPHHMK/98JCMQ:8`.K\823MD<"4LDA32K8P*+^)V+O@V5SA,Z3EQ9
MB'!MR1#+]6I%X]!"'/\D$AOF)K#-`1\03^"I\6AMQ8H.?3"F?U)9"M&[%S4;
MY>KF%B#7=U(5#^9!2UR00X_MH,,H47V$W]#]-+>S>#V=S_E(6@EYJ'8`Y4<=
MH,/(UOT@\(;T`PIUQO[\DXBGIP'>YPC=K9$6:R`E-+K58C"PNNO&XPW#^[@2
M8-+2*B=,4TZU3*D`)E8D(RG,4CS@Z16@[,SI$'/8Y_`=0$-PGL4PXD5E\T5-
M$F`IP^J5%VT_3`7PY0KI$^_;6"^O%`TJ\R(CAY)@Z;4D@[W$5@PG3O:E'&T9
M0R?L!F^"3:`==H6;O56[V,9I$R!%`0BLO&G'&C0B9L^QP!Z(8]O=A=44T?==
M<+-%=S8\KHL*9?LL;UVYN^QD?N*GGHL.X?4SW3NMJ)]8+C[
MQT/U;$!NC\<_'!Q]=%B\SK)T95+S*VW?8N0':]KE0>$)_^%@_'$'PB]?JF,6
M<@'TVY>\<*(V.<%DW;WR6[O0KCL(%QIP]N'(+9"4#]`T:ZN[!^)?3U5+E+8*
M2"@:$3GBE@/>5_:.;[5&2CFZUMF*:)[6G#+E4EW%$MZQ-!1`B^;%^%4G],
M.>U`&*8-%Y(`)FZ.-`@7T"4Z/(SZI-L4:81.
M:QRTK`##&1+W"]CD=43!&BQH+R!I9^,LI0C!Q4\IQ]$0X>O8Q%55]J=3SJK`
MZNETJ/9:=-BSUF'?7BXU\2C=$!;5^(=05M*EK`2A*MAQ#IC4<@UA))*)/[:EP25S,R*0F-)16UF:+;OU#F=2R/^$!M-HSZ)H`$;
MFQ/[=Z2YKLY`B\Y]?8'JO65Z@W0H%`AI(1([054>%^+S8@8N>)('D`9;RF+IM[07?@D>LED3"0(^\$FW]M[4@*7PNI,ZNB]MT1%SG_N\.QI`&+C(ARRFZ;J-R]W
M`=]U;?YO]-"ZE?[6K-K>0)!TL>8$Z:^B,C:U7=FX)X3#XV3/WOYV7_T=
MZ/'Q`B\MU_:GE2VY,X*3;G!ARUX=WJA%G-(E+D>\,&GWN]*]QRS-5U3\VBT(
MK*[&,Y1N8/D@TREO"E/_,&]W/7D:N%%B:WB1/!*CW:5+2V$G]E!GY!OY5*$`
M!NZD!=EI^87^.T'JNS,/O+J?N8J<+6UV==WY+=;%)NEOPNXB2SA`)R?7%J$@
MCVVH'D@\@^!@W=3S.5UEW^B,KFA**C"(2QAVLK6?=5D,59U7:2;9MB<';<(D
M2BQR9QQJL\EQS8EP):[6V#0EFL"PEH&BDIW*?@K_%4>8O@&9F;6FQP^D"@[2A
M,R)S;;W`$E:$O[>'8;A"T\A
M)EI5*6^464K7K<;Y"[Y&Y#M%]6&"H
M+AV<^?-E1RX1_0'[!.BA#&UO@P5-V4)J#'CH0>ZUI8(VH"XI_.H*L"#/0B-O
M.RMQ`+ZH?DB@*;D-%]POJXWD$T[]%FGHVIUTOH/8UOQYF[<)=(".0<76
MJ51$V5+UGX"$IEW?<>C:]@F69YXS#51FWL*MKAF>T=O2739TV72Z7(`#9=
M[_:JV01A>.,^`KA-?ZEM)9;[1(\@QY>EC1\9),3_IV`'?\,?G,\7E/P)'=/I
M:DHU5