HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/share/zsh/functions/Zftp.zwc
��5.8.1�P�debian/zsh-common//usr/share/zsh/functions/Zftp/zfanon�����debian/zsh-common//usr/share/zsh/functions/Zftp/zfautocheck8���debian/zsh-common//usr/share/zsh/functions/Zftp/zfcd81��debian/zsh-common//usr/share/zsh/functions/Zftp/zfcd_match1o		,�debian/zsh-common//usr/share/zsh/functions/Zftp/zfcgeto�	�X�debian/zsh-common//usr/share/zsh/functions/Zftp/zfclose�	T	`�debian/zsh-common//usr/share/zsh/functions/Zftp/zfcput��W
�debian/zsh-common//usr/share/zsh/functions/Zftp/zfdir�����debian/zsh-common//usr/share/zsh/functions/Zftp/zffcache�1	0�debian/zsh-common//usr/share/zsh/functions/Zftp/zfgcp1�A��debian/zsh-common//usr/share/zsh/functions/Zftp/zfget�I���debian/zsh-common//usr/share/zsh/functions/Zftp/zfget_match-�	x�debian/zsh-common//usr/share/zsh/functions/Zftp/zfgoto-��X�debian/zsh-common//usr/share/zsh/functions/Zftp/zfhere����debian/zsh-common//usr/share/zsh/functions/Zftp/zfinit��A��debian/zsh-common//usr/share/zsh/functions/Zftp/zfls�At4�debian/zsh-common//usr/share/zsh/functions/Zftp/zfmarkA����debian/zsh-common//usr/share/zsh/functions/Zftp/zfopen��W0�debian/zsh-common//usr/share/zsh/functions/Zftp/zfparams���
��debian/zsh-common//usr/share/zsh/functions/Zftp/zfpcp�����debian/zsh-common//usr/share/zsh/functions/Zftp/zfput�� Q��debian/zsh-common//usr/share/zsh/functions/Zftp/zfrglob�!���debian/zsh-common//usr/share/zsh/functions/Zftp/zfrtime#p	�debian/zsh-common//usr/share/zsh/functions/Zftp/zfsession#j%�
��debian/zsh-common//usr/share/zsh/functions/Zftp/zfstatj(+�debian/zsh-common//usr/share/zsh/functions/Zftp/zftp_chpwd_)��debian/zsh-common//usr/share/zsh/functions/Zftp/zftp_progress_)�*��debian/zsh-common//usr/share/zsh/functions/Zftp/zftransfer��,O`�debian/zsh-common//usr/share/zsh/functions/Zftp/zftypeƚ-i�	�debian/zsh-common//usr/share/zsh/functions/Zftp/zfuget�51�
��debian/zsh-common//usr/share/zsh/functions/Zftp/zfuput5Af�dқCABr!Q�'d|�A��dz���"K�A�CNACf�҉z��A"
r��"���F-�F��A�F��A"
CF@YA��T�SAR�Agd��A,�1A.r;t9A.��
A�A,\yA"�
Q�qA"R���A�"1"A R�A(	'd��!A,%PA,&��Ah�	�A �	��f���A,(�AC
f�,�A,+DyA.,��AL��1A.R�A�F�AF��A,2��A�F%	A�6�1A.6r+�;|9A,7��	A,8"K�
A.9�5
A�1
A.<rY
�ABC���+�t
�CF��q
A����
+�t
�ABF��F��A4��1AC�
�
AF�
�
emulate�curcontext:zf�localcurcontext:zfanonopt_1getopts�optprint�zfanon: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��EMAIL_ADDRdomainhost�HOST/etc/resolv.confdomain��������M����f����</etc/resolv.conf���:�domain����2���domain�HOST.�domain�host��������M����f����nslookup $HOST 2>/dev/null���:�Name:����2��oldvb�ZFTP_VERBOSEoldtm�ZFTP_TMOUTZFTP_VERBOSEZFTP_TMOUTzftpopen/dev/null�ZFTP_HOSTcloseZFTP_VERBOSE�oldvbZFTP_TMOUT�oldtm�Can't get your hostname.  Define �$EMAIL_ADDR by hand.�EMAIL_ADDR��USER@�host��Using �EMAIL_ADDR as anonymous FTP password.���1��ftp://���1��/���1%%/���opt_1anonymousparams�dirzfcdAC'9A'��A"=F��A����
AR�AB�&��F�AB�+�;$;0��AC|FThA�F�qAB&�F�A��1A.#�+�;t;A	F�Q	AF%2`�
����A�	�|F0Elocallastloc�zfconfig�lastloc_�ZFTP_SESSION�ZFTP_VERBOSE��ZFTP_VERBOSE//0� ��+zftpseconds� unsetzftpseconds�ZFTP_HOSTzfopenreturndo_closezftptest/dev/null�lastloc�ZFTP_HOST��lastloc%%:��zfcd��lastloc��:�A�f�dқCABr!Q'd|�A���A.r+�{9AB�F��$s�F���ABCF��$CF��A� 	�AV R�r+�
r+�%A.!�EA�	�A$}A�	f�+�������AN'2pr+$�r+��AC
f�+�����A&*r+$�AC�(�+���=A�'d��At
�
1
A"
f�#�4�
�A�
f�k�41A.7�
A�F0Iemulate�curcontext:zf�localcurcontext:zfcdzfautocheckreturn�HOME�HOME/��~��1#�HOME�� �# == 0 �zfconfig�lastdir_�ZFTP_SESSION�eval��${ZFTP_PWD:s!�1!�2!}�lastdir�ZFTP_PWDzftp��@��lastdir�zfconfig�curdir_�ZFTP_SESSION�zfconfig�lastdir_�ZFTP_SESSION�print�zfconfig�lastloc_�ZFTP_SESSION�Af�dқCACF <A�	�AVR�r+�qr+��A.	��AC'����A ���,D`A4��E�AA.ru�AF �ACG�"K�A�
1A.r+��A."K�
QA.r+�{9A."K�zAC�,EA<�1A
uAC�,�A��,�A""(2`�
���;|("K��A�C
�	A)�
A4�
f @p��ۜzیۄ��
�A,�
�AC�,)qA�F\+<emulatesetoptextendedglob�HOME�HOME/��~��1#�HOME��localZFTP_VERBOSEmatchmbeginmend�ZFTP_SYSTEMUNIX�rcexpandparam��/���1%/��reply���M����f����zftp ls -lF $dir���:�d����:space:������:space:�������c8�����/��#reply���M����f����zftp dir $dir���:�d����:space:������:space:�������c8�������reply/��b�d����:space:������:space:�������c8�����/�����/�/�match�2���dir��dir/��WIDGET_wanteddirectoriesexpl�remote directory�compadd��dir��reply��dir��replyzfget_matchA�f�dқCABr!Q'd|�AlCgdb{�+k��Ez��E�E�EE,EDA�gd\tA��Af��9�z��A"r���"CF��CFT�A�Fp�A"�F�Al���+<A�	�AVR�rMqr��A.�A<��1A.��AF8A���u1uA"YA��,q�+k�A,$b{�AXC	j�
A&%��AB �	�f�:+��'�+��^A�
�,
A��
�V$A �$+�f1A,D+�A�\u�A�1A.0rE�A C��f`y!AB$�D-����3@+�A
&TQ
A.5rE�A�
��F`yA�
&�ADC�'�	A&9�	=	A���F`e	A�&�	Q
A.<��	=	AC��F`
A�&�
�A���A$D-�����
A"Ar�
�C�-�%qA.C@�A�FLiemulate�curcontext:zf�localcurcontext:zfcgetstatopt_Gopt_tremlistlocstremstrstattsizegetopts�optprint�zfcget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_Gzfrglob �#remlist �remlist��rem:t��loczftp�rem��zftp local $loc�zftpremote�remrstatremst��<$1���<<<'temporary file'��rstatprint�Server does not support SIZE command.\n��Assuming you know what you're doing...�zftpgetat�rem�locst�1��locstatcontinue�Remote file not found: �rem�continue�locst�1��remst�1��Local file is larger!�continue�locst�1��Files are already the same size.�continue�locst�1��opt_tzfrtime�remst�2�return�statABr1�'D\�AF���curcontext:zf�localcurcontext:zfclosezftpcloseA�f�dқCABr!Q'd|�ATCgdb{�+k��E�E�EE A�C�1A.rE#A. QA.r�#A. qA ���f 9=AF��A���xb{+<A,!�+kA�"	�AV"R�r-rEA.#�+keA@C	g�A&%RA�	F �A.'���]A�
��A��
�S$A �$+�f1A,D+�A�\u�A<�F�
A.0r9�A C��fTm=A,3D�A
&XQA.5r9�A �
$�f|�����	A&8���AC��FT		A�&l	Q
A.;��	�A��FT�	AC&D
qACi
A��A.Dr�
AB,cf�
�Cf|(�ED��	AB,�f�
E��f|��GD�ACF��emulate�curcontext:zf�localcurcontext:zfcputstatlocstremstoffstailtype��echo abcd | tail +2c���echo abcd | tail --bytes=+2�print�I can't get your �`tail' to start from arbitrary characters.\n��If you know how to do this, let me know.�return�loc�rem�HOME�HOME/��~��rem#�HOME���Can't read file �loc���zftp local $loc�zftpremote�remrstatremst��<$1���<<<'temporary file'��rstatprint�Server does not support remote status commands.\n��You will have to find out the size by hand and use zftp append.�statcontinuezftp�rem�loc�remst�1��locst�1��Remote file is larger!�continue�locst�1��Files are already the same size.�continue offs = �remst[1] + 1 �tailtypetail+��offs�cappend��bytes�+�offsappendreturn�statA�f�dқCAF <ABrq��'���A,��z��(HJ`�A'���AC'�4YA,�N"A.r+��<A��
AV R�r+��r+���AC&�A�&��A.#�+�AC	&�A,'(5A@
L'PiJ[YA,)z���A�
A�0	�A.+H�0	2A.-��0+"A"/2@�
����f�k�4A"02@�
9�af�k�4�ACF��$A�F��A�
&�ABCF��$CF��A�<LP!PA�=	�AV=R�re�re�	A.>��A���6�AFB2`r+$��=�A�E�1AERYA,Fx�A.G5�A.I�q$A�M�1AMR�A,N4A.O�E	A,Qm	A,R`�	Al��1AVS2���	2P�
�	��	�ABVr
%

�f�k�4�	A"X�
�
X�
]Ad��1A&[r�	�Af�k�4�	A"_��F��$A�"1A6b2@�
�	��	A�f��!qA�C�A(CACF<PA<�f<"K�+<�F�++�	�F�e�A ��	f<"K�+<A�f���	emulatesetoptextendedglob�curcontext:zf�localcurcontext:zfdirfileoptlistredirnewargsforcecurdir�zfconfig�curdir_�ZFTP_SESSION�otherdir�zfconfig�otherdir_�ZFTP_SESSION�shiftbreak��rfd�����1���i = 1i <= �#optlist�optlist��i��curdir�curdir�curdir�otherdir�otherdir�otherdirzffcachereturnzfautochecki <= �#argvi++ �argv��i��HOME�HOME/�argv��i��~��argv[�i]#�HOME���redir�curdircurdir��TMPPREFIX�zfcurdir_��ZFTP_SESSION�_��zfconfig�curdir_�ZFTP_SESSION��curdir�curdir�otherdir��TMPPREFIX�zfotherdir_��ZFTP_SESSION�_��zfconfig�otherdir_�ZFTP_SESSION��otherdir�otherdir��*��file�newargs�force�newargs�zfconfig�otherargs_�ZFTP_SESSION��newargszfconfig�otherargs_�ZFTP_SESSION��newargs �# == 0 eval��PAGER:�/usr/bin/pager��$filezftptest��PAGER:�/usr/bin/pager���PAGER:�/usr/bin/pager�A"r+��$�GA,IA�C�1A	R�A�G�A���AG�JAT
A
�
�ADA,]A.�Ah1A.r+��$ACFHaQA�A�F�localfcache_name�zfconfig�fcache_�ZFTP_SESSION��fcache_namevals���v�zfconfig��I�fcache_����zftp_fcache_�integer��vals��r�zftp_fcache_�i�� i++ zftp_fcache_�izfconfig�fcache_�ZFTP_SESSION��fcache_nameunset�fcache_name ��(P)#fcache_name� == 0 eval��fcache_name=(�${(f)�"�$(zftp ls)�"})�A�f�dқCABr!Q'd|�A(C�dz����+kb{��A�g4HA�NAfl�9�z��A"r���"C��F��CF0�A�FLaA"�F��AB�&(�F0�A���1AF"2`�+$��YA���F��A	F0��
A.%�+$�A�	��F�5A�	F0�A��
Q�=A*�YA�
'd"K�YA,,�A�C,2�+<A�/	�AV/R�r��r9A.0�YA<��1A.2���A�F��A�C
�A5�A��
��+kA,7b{9A���A �fp:+��A"9r��Cf���qA.;4��A�A	�AVAR�r+��r+��A.B�	AB +�fp:+�+�D4+�A"GA�&pACF0�emulate�curcontext:zf�localcurcontext:zfgcpremlistopt_Gopt_tintegerstatdo_closegetopts�optprint�zfgcp: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheck�argv��1��zfgcp:  last argument must be a directory.��zfgcp:  not enough arguments.�argv��1��remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_Gzfrglob �#remlist �remlist�dir/��rem:t�zftp�rem�loc�opt_tzfrtime�HOME/��~��1#�HOME�� �do_close zfclose�statACf�dқCABr!Q�'d|�A,db{�+kz�����ACg,L`A���A�f��z��A"r���"F��F\�ACFx�A"��F�
ABC&TCF\�A���=�+<A�%	�AV%R�������A.&�A<
�1A.(�U�AC
Fp�A<�
�&1&A+�A,"�+k�A�C�A-�
�A�f:+�A./L+��A,1b{)A����A �Mf:+�A"3ra��f|MqA.5L�A"<�&�A�F\�emulate�curcontext:zf�localcurcontext:zfgetremlistopt_Gopt_topt_cintegerstatdo_closegetopts:Gtc�optprint�zfget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheck�remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_Gzfrglob �#remlist �remlist�opt_czftp�rem��rem:t��loc�opt_tzfrtime �do_close zfclose�statAf�dқCABC� �4DlCF��A�	�AVR��+���+��A.	��A��y�cAV2��M�+�;|9AC�d���A�' 5AB����4s���F��ApCM�CA�
�A�'"K��ABr;|"K�)A$��Hb��d2ACg\xA�\�AC�x=A��A
�A C�fH"K�A��\A��\AC�x!A��xA4	f	4	d	y	�	ۜzیۄ��	A,C	&
$
d	=
t
ۄ��
�A 
�fHb��
AC
��
�
qAGAC&DAp�
�A.�
iA,�&�$
d	=
��4����AC��
�emulatezmodloadzsh/filesb:zf_lnreturn�HOME�HOME/��~��1#�HOME���ZFTP_SYSTEMUNIX�setoptlocaloptionsclobberextendedgloblocaltmpf��TMPPREFIX�zfgm��zf_ln��<<<''��tmpf�WIDGET��1%/���dir��dir/�zftpreply1reply2�����M������f����<$tmpf������dir�:��/�%/����������f����<$tmpf������dir�%�*�:��/��#reply1���M����f����<$tmpf���:�d����:space:������:space:�������c8�������reply1/��b�d����:space:������:space:�������c8�����/�����/�/�match�2�������f����<$tmpf���:�d����:space:������:space:�������c8�������reply2/��b�����:space:������:space:�������c8������/�match�2��_wanteddirectoriesexpl�remote directory�compadd�reply1_wantedfiles�remote file�compadd�reply2��1*�2�reply��<$tmpf�fcache_namezffcache�WIDGET_wantedcompaddfignore���P�fcache_name�A�f�dқCA�F <ABrq�'���AF�A�g���A���$z��A�C�ACf<�qz��A"r]��"�Fp��F�A�F 5A"hCF��AX�
�	A�A��Fp%ACF�Ap-1A6 2@�
���AC'��
A,"J2�bAH�$5NA�f ۔A.$5}A.&J2��QA'��A��
$NA�
f ۔A"*,R�r��r�!&dA.-��A,1EAX�
�	A3R�A
��Fp�AC
F�A���	"K�A,9�	A,:E	A,;	q	A,<"K��	A��B�AV>2�r�	�	r
=
AFT
i
Q
AVAR�r�	2��r�	�
A"�F�
=
"C�
�
�FT
�
�AVD2�r�
mr�	�	A"&"H�
�
FT
�
�A�G�8A�8UA�C��AVM2�r=
�
r�	�A"�&"N�
�
�FT
�
qA"f=
�	"P�
�
FT
�
emulatesetoptextendedglob�curcontext:zf�localcurcontext:zfgoto��ZFTP_BMFILE:���ZFDOTDIR:��HOME�/.zfbkmarks�typesetbkmarkslineopt_ngetopts�optprint�zfgoto: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )� �# != 1 �Usage: zfgoto bookmark��opt_n�/.ncftp/bookmarksoldifs�IFSreadbkmarks��line�1�����line[3]:-anonymous�@��line[2]�:��line[6]���/.ncftp/bookmarks�oldifs�ZFTP_BMFILE�line��:blank:�����:blank:����#��continuebkmarks���line%% ������line#* ���ZFTP_BMFILE��bkmarks��1���Bookmark �`�1' not found�userhost��line%%@����line��@���line%%:����line��:��ZFTP_USER�user�ZFTP_HOST�hostzfcd��dir:���anonymouszfanon�dir�zfconfig�lastloc_�ZFTP_SESSION���host�:��zfconfig�lastuser_�ZFTP_SESSION�zfopenparams��zftp params��params�1��params�2�ABr1C'D\�A�F���curcontext:zf�localcurcontext:zfherezfcd�PWDA�f�dқCA��A.�+��tABCf �LDCFt�AB�� �L���Ft�A�C�616ACf �L�A�G�
��AB��<
��%L�q��ABC��<
����C���AB���<
��)P��u��Ap�
�A"��F�����<
��=�A�e��A�g��<�A%��A�F 9AF �ACF �A�F %A�F yA,C&�۬��DX���A4�f�۬�<Tl����A0�F۬�(D`�����A,&	۬�@	\	�	�	�	
$
A�	b�aA"&RPrA
�Ry
<�	�A$�	��&�
A�
F�
A��L�4��m�\���
�\Hۜzی�u�\l���\l��\\�uۜ����A(
@�\`ۜzیD�A$C
���\lT<
�A �
���\\�D`A0�
F�ۜ���ۜA���(A�0ۜQ�A�>+�	zA(�'-PqA"�
��f���Af�%+�A"2@�
��
ECf�hEA����A4Cfۜ-ۜ���u�\����ACF�emulatezmodloadzsh/net/tcpreturnzsh/zftpzftpzsh/zutillocalzstyle�:zftp:*�progress�:zftp:*�progress�:zftp:*�update�:zftp:*��:zftp:*�titlebar�:zftp:*�titlebartruefunctionschpwd/dev/null�:zftp:*��:zftp:*�typesetzfconfiglastsessiondefaultaliaszfcd��noglob zfcd�zfget��noglob zfget�zfls��noglob zfls�zfdir��noglob zfdir�zfuget��noglob zfuget�autoloadzfanonzfautocheckzfcdzfcd_matchzfcgetzfclosezfcputautoloadzfdirzffcachezfgcpzfgetzfget_matchzfgotozfherezfinitzflsautoloadzfmarkzfopenzfparamszfpcpzfputzfrglobzfrtimezfsessionautoloadzfstatzftp_chpwdzftp_progresszftransferzftypezfugetzfuput���_patcomps���_patcomps��r�_zf���compctlsetoptcompletealiasescompctl�p[1]��(open params user login type ascii binary mode put putat
    get getat append appendat ls dir local remote mkdir rmdir delete
    close quit)��w[1,cd][1,ls][1,dir][1,rmdir]�zfcd_match�W[1,get*]��w[1,delete][1,remote]��w[1,open][1,params]�hosts�w[1,session]��${$(zftp session):#$ZFTP_SESSION}�compctlzfcd_matchcompctlcompctlcompctl�$(awk ��'�{print $1}��'� ${ZFTP_BMFILE:-${ZDOTDIR:-$HOME}/.zfbkmarks})��W[1,-*n*]��$(awk -F, ��'�NR > 2 { print $1 }��'� ~/.ncftp/bookmarks)�compctl�${$(zftp session):#$ZFTP_SESSION}�zftransfer_matchlocalsess��1%%:��oldsess�ZFTP_SESSION�sesszftpsessionzfget_match��1��:��oldsesssessionreply��sess�:���reply�compctl�$(zftp session)��C[0,*:*]�zftransfer_matchzftransferreturnAf�dқCABr!QC'd|�A�	�AVR�r+��r+��A.	��AF0�$A�f`b�+<emulate�curcontext:zf�localcurcontext:zfls�HOME�HOME/��~��1#�HOME��zfautocheckzftpACf�dқCA�F <ABrq��'���A�F�ACg���A�G�A��1A�!A��$�NA�fT۔A"*R�ri�ri�C&�A.qA���A�A4��Af<۔�UA�F���	A#�A	��F<�AC	F��A�
1A(�
iA.)��QA*�
eA.+���A���F<	A�F��A@���A�f<۔�Uemulatesetoptextendedglob�curcontext:zf�localcurcontext:zfmark��ZFTP_BMFILE:���ZDOTDIR:��HOME�/.zfbkmarks�typesetbkmarksline�ZFTP_BMFILEread�line��:blank:�����:blank:����#��continuebkmarks���line%% ������line#* ���ZFTP_BMFILE �# == 0 ���ko�bkmarks�print��line ��bkmarks[�line]��return �# > 1 �Usage: zfmark [bookmark]��ZFTP_HOSTbkmarks��1����ZFTP_USER�@��ZFTP_HOST�:��ZFTP_PWD���zfconfig�lastloc_�ZFTP_SESSION����zfconig[lastuser_�ZFTP_SESSION]�@��zfconfig[lastloc_�ZFTP_SESSION]���No current or recent ZFTP session to bookmark.��ZFTP_BMFILEACf�dқCABr!Q�'d|�A �dz��"K���A��NA�f҉z��A"r)��"���F<U�F��AF�A"4�Fh�A��1A.r+�;|9A,��A,"K��A.�A���51A.rA�AB�f\p+<�F��A��A. r+$�ATC�	1	ACF\�A�F\�A�F���A"(�"
F�+<(��A��
�1A�
F\pA"+�
��
F\�A",�
)F��ACF��A4C�1A1�
UA�FhUemulate�curcontext:zf�localcurcontext:zfopenopt_1setparamsgetopts�optprint�zfopen: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )���1��ftp://���1��/���1%%/���opt_1zftpopenloginclose �# > 0 zfparams�ZFTP_HOST�setparams�dirzfcdAf�dқCABr!QC'd|�A��51AN2pr+$�r+��A(C'd��EZ+�A,
Z+�A"�
��F��AH,Z+����(LtACF��QAA")���A��
AMA�
1A.r+�qA.��qA.��A�fl�+<emulate�curcontext:zf�localcurcontext:zfparamssess�ZFTP_SESSION��zfconfig�fcache_�sess���keyunsetfcachelastloclastdircurdirotherdirotherargslastuser�zfconfig[��key�_��sess�]� �# > 0  �# < 2  �# < 3 �?���?Password on ��1�: ��?Password for ��2##�\?� on ��1�: �zftpparamsAf�dқCABr!Q�'d|�A�gd�+kb{Ag���AB�&�FL�A�V�0AvR��+$�R�r+�ir+�;|AC'd"K��A,�A�	�AVR�r��r��A."K�AB"2`�
���;|"K�]Ap,
b{+<A,!�+k}AB �$�f�����"���$A�%	�AV%R�r+��r+��A.&�
A 
$+�f����+�A,)�+�A��
�Av*2����2�rE���rq�	A $+�f�����A.-�+�A"1
C&<A�FL]emulate�curcontext:zf�localcurcontext:zfpcpintegerstatdo_closezfautocheckreturn�.�..��argv��1�argv��1��dir�HOME�HOME/��~��dir#�HOME����dir/��dir��loc:t�zftp�rem�loc�HOME/��~��2#�HOME���ZFTP_CODE�ZFTP_REPLY��Is a directory���2/�1:t �do_close zfclose�statACf�dқCABr!Q�'d|�Agdz���AC���4A���A�fLґz��A"rm��"F��F�ACF,AA"t�F��AC&A�k8��A��b{�+kA�G8XA%lA���3b{+<A����A�
�Al��A��AC%���A�&qA.�+k�qA.�+k%A �$�fH���]A"qX+�A|�1AFH�A,��AB�X�A�&�A���A�AfHD]ACF��A"qX+�A�F$A�FDaA�F�+<A,@+�A"B�&DAFd�emulate�curcontext:zf�localcurcontext:zfputopt_rintegerstatdo_closeabortgetopts�optprint�zfget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheckzfput_sublocalsubdirsintegerstatsubdirs�opt_r�locsubdirs�subdirscontinue��loc:t�zftp�rem �? testabort stat break �#subdirs  && ! abort mkdir��subdirs�1��zfput_sub��subdirs�1��/��ND�shiftsubdirsreturn�statzfput_substat �do_close zfclosereturn�statAf�dқCACF <A(��p��"K���J�A"C��ۤ�1`�A�F��A\C�
1
An!2����R`�
���A�F<�At�	�M�A.&����At�	�+A,�$+�0fb�A�FXmq:A�5�'AV,2�ra�r�;|9A�.
1A..r��A.0"K��qA.2"K�zA,4�AxC
+#A,�0$+�fb�A��Xq�AC�,E�AGp�AC&�A,>��A��,
ACFTiemulatesetoptextendedgloblocalnondirfileszfrglobzstyle��curcontext�remote�globzfrglobevalpat��$�1�pat���������zfrglob���������returnzftp��pat�/dev/nulleval��1=(�$(<�$1))���<<<'temporary file'��ZFTP_SYSTEMUNIX��pat��/���pat%/��nondir��pat���/�zftp��dir�/dev/nullfiles��<$1���<<<'temporary file'�files��files:t�localfcache_namezffcachenondir�pat���P�fcache_name�eval��1=(�${files:/^�${~nondir}})�Af�dқCACF DA<��x����j{s�B�jKs�+�Agx�L(A��1A�
+�A.�+�q	AC��mA"�
���A"R�F �A,�=A,j{siA,��A,B��A,jKs�A,�+%AX�,
�YA ���ۜ�۔�)A.$ET�A �	��ۜ۔!MA,'E��A,)�A�
��ۜ�	EA��ۤ�+�emulatezmodloadzsh/datetimelocaltimegmtimeloctimeyearmdaytmpdatedays_since_epoch��zftp remote $2 2>/dev/null��time�time�2�return�time�1,4��time�5,6��time�7,8��time�9,10��time�11,12��time�13,14��1970..��( �year - 1)��strftimetmpdate�%Y/%m/%d���y�/12/31days_since_epoch��strftime "%j" $tmpdate�tmpdate�%Y/%m/%d��year/�mon/��( �mday - 1 )�days_since_epoch��( �sec + 60 * ( �min + 60 * (�hr + 24 * �days_since_epoch))  )��%Y%m%d%H%M%S���EPOCHSECONDS�touch��time�1,12��.��time�13,14��ACf�dқCABr!Q�'d|�A(�dz����4A���	A�fTuz��A"r���"���F���FH�AFdyA.
4�A"��F��A�C�1AvR��+$�2�2@�
ARe�+$�A���F��AFH�A����A�
-AGdHA�C,H]A�f��t�AT��	1A.r��AF���A�&�QA!�
	A�F$8A�C	�A%�
YA��	�1A.&�u�A�	'd5A
f$luA,)��A�
F��A��F�MACFH�AC� 1 A1�
eA(�'d"+c�EZ+�A,3Z+�%	A"4�
�	
F�	�	AHC
,Z+��	�	�	
,
P
x
A�
F�	�
Af$-AC&HA"<�
AFHeAP�	�A.>r+$�A�F�}A&HA�'d��Af$D+�APC	�A.E�e�A,F��A�&$
emulate�curcontext:zf�localcurcontext:zfsessionopt_lopt_vopt_oopt_dhadoptsgetopts�:lovd��optprint�zfsession: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��hadopts�opt_d�Usage: zfsession ( [ -lvod ] | session )��opt_vsess��zftp session����(r.15.. ..:.)sess�\t��zfconfig[lastloc_�sess]:-not connected���sess�ZFTP_SESSION� *��opt_lzftpsession�opt_o�zfconfig�lastsession��ZFTP_SESSIONcursession�ZFTP_SESSIONsessionzfconfig�lastsession��cursession�ZFTP_SESSION�zfsession: no previous session.���1:��ZFTP_SESSION���zfconfig�fcache_�del���keyunsetfcachelastloclastdircurdirotherdirotherargslastuser�zfconfig[��key�_��del�]�rmsession�del�hadopts�stat�ZFTP_SESSIONoldsession��ZFTP_SESSION:�default�session�ZFTP_SESSION�oldsessionzfconfig�lastsession�zftp_chpwdA�fPAFh�AB
r���'�<A8�G�J\�Ez��EpA�CNACf�ұz��A"r���"���F���FP�A�Fl�A"�CF�A"�
I�F��A�C[1OA�
�A�F�A�F�mAF��A"�

CF�AA��=19A�
�A�F��A"�
=F�uACF��A�f��t=A���1A.r��L�AF��QA.!r���A�F��qA	F�A�	f��t1A��	�1A.'r}��A
F��QA.)r���A�
F��qAF�	qA�F�)	qA�F�}	A"3�
�	
F�E
A.5\�A"9�
CF�AA�F��A�F�Af��t}A�CL��(
A��-=
0
}
A�f��t�
0
�
ACf��t�
0
A�f��t0
;	ACf��t5A&�A���AFJ2`�
�r��
A�F��$AF�A�'�l���A�f���A�FP�setoptlocaloptionsunsetunsetoptksharrays�curcontext:zf�localcurcontext:zfstatstatopt_vgetopts�optprint�zfstat: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��ZFTP_SESSION�Session:\t�ZFTP_SESSION��ZFTP_HOST�Host:\t\t�ZFTP_HOST��Port:\t\t�ZFTP_PORT��IP:\t\t�ZFTP_IP��ZFTP_SYSTEM�System type:\t�ZFTP_SYSTEM��ZFTP_USER�User:\t\t�ZFTP_USER ��ZFTP_ACCOUNT�Account:\t�AFTP_ACCOUNT��Directory:\t�ZFTP_PWD��Transfer type:\t��ZFTP_TYPEImage�ZFTP_TYPEAsciiUnknown�Transfer mode:\t��ZFTP_MODEStream�ZFTP_MODEBlockUnknown�No user logged in.��Not connected.��zfconfig�lastloc_�ZFTP_SESSION��Last location:\t�zfconfig[lastloc_�ZFTP_SESSION]��ZFTP_REPLY�Last reply:\t�ZFTP_REPLY��Verbosity:\t�ZFTP_VERBOSE��Timeout:\t�ZFTP_TMOUT��Preferences:\t�i = 1i <= ��#ZFTP_PREFS�i++ �ZFTP_PREFS��i��pP��Passive ��sS��Sendport ��dD��Dumb ���ZFTP_PREFS[�i]???��ZFTP_HOST�opt_vzfautocheck�Status of remote server:�ZFTP_VERBOSEzftpquoteSTAT�statA���A.�)A�'���A"2@�
a���f�k�4�A,�ACFH�$AHH1ARmA"2@�
���f�k�4�A,)A"���ۤ��&q5A"�
)A,)�A,�A�G��A($�#A" 2@������ۤ�AC'����AA""����"����A��!0
9A	fXۄrq0���$A�	fXۄr=�ZFTP_PWD�zfconfig�lastdir_�ZFTP_SESSION�localcurdir�zfconfig�curdir_�ZFTP_SESSION��curdir�curdir�curdirzfconfig�otherargs_�ZFTP_SESSION�zffcache�ZFTP_USER�zfotherdir�zfotherdir�zfotherdirzfconfig�lastdir_�ZFTP_SESSION�zstyle�:zftp�curcontext�chpwdzfconfig�lastloc_�ZFTP_SESSION���ZFTP_HOST:�ZFTP_PWD�zfconfig�lastuser_�ZFTP_SESSION���ZFTP_USER�args�:zftp�curcontext�titlebar�zfconfig�lastloc_�ZFTP_SESSION����str��%m: %~  �str��TERMsun�cmdprint�\033]l�str\033�\��xterm�rxvtdttermEtermkterm�\033]2;�str\a�A �G0�A�Lۜi�A��Lۜ�00A"&Rp��r%ACF`�A���Z1ZA�
}A"�};4"�"�&`A'��A�C�3�-A&!��A�',AA,��$�Av#2�r%�2pr�����A@	�A$AC	��Fl�A�	'0PuA
'��A C
��fl�t�qqA �
��fl�t]qA ���fl�t)A���AV02�r};4r��ACF	,	A���&lqA 
G\	�<|	�	localstyleupdatezstyle�:zftp�curcontext�progress�:zftp�curcontext��style��none�return�ZFTP_TRANSFER ��+zftpseconds�  SECONDS - zftpseconds < update size��ZFTP_TSIZE:��ZFTP_SIZE���size:�0�frac���( ZFTP_COUNT * 100 / size )�%���+COLUMNS��COLUMNS ! ��+zftpseconds� print��ZFTP_FILE (�size bytes): �ZFTP_TRANSFER�integermaxwidth��( COLUMNS - 7 )�width���( ZFTP_COUNT * maxwidth / size )���\r%S��(l:width:):-�%s��(l:maxwidth-width:):-�: ��frac�%%��\r�ZFTP_FILE (�size bytes): �ZFTP_TRANSFER �frac��\r�ZFTP_FILE: �ZFTP_TRANSFER �ZFTP_COUNT���+zftpseconds�unsetzftpsecondstypesetzftpseconds�SECONDSA�f�dқCABr!Q'd|�A,C�d�� 8YA\��
1
A&�+$�A��F��ACF`�A��	1	A.r+�;�9A,�}A.�AF��A��	1	A.r+�;�9A,�!A. EA�F�eA��AFR`R�r�;|A. �A`��
A.r5QA��F�mACF`�A	f$85ABC	&XC	F`�AGd�AC��ۜ��A��AF.2`�
-�-HA�gd\�Ax+�*A,�$+�Lf1A��t�IA"4r��4��A�c)AC��T�4XA�fl:+����A�fl��A"&�fl���		A�'$	<	+�AflP	q	A�F�	�	emulate�curcontext:zf�localcurcontext:zftransfersess1sess2file1file2oldsess��ZFTP_SESSION�print�Usage: zftransfer sess1:file1 sess2:file2�return��1%%:����1��:���sess1:��ZFTP_SESSION���2%%:����2��:���sess2:��ZFTP_SESSION��file2���file2���file1:t���sess1�sess2�zftransfer: must use two distinct sessions.�zftpsessionzfautocheckstylezstyle�:zftp:zftransfer�progress�stylenoneZFTP_TSIZEarrayzftpremote�file1/dev/nullarray��<$1���<<<'temporary file'���arrayZFTP_TSIZE�array�1�zstyleprogressnonezftp�file1session�sess2zfautocheck�file2localstatsession�oldsessreturn�statA�GABr-]'p�A�F��$A��;�A�A,	A���1	A.
rIJA�F`yAF��Q	A.
rI
A�F`A�F��qACF��qA��1A.�+�yA.
�AVR��+���+��A.J�AC��F`=A�F��Af�Ilocaltype�curcontext:zf�curcontext:zftypezfautocheck �# == 0 ��zftp type��typeprint�Current type is image (binary)�return�Current type is ASCII���i�a�sc�ii������i�i�m�age������i�b�in�ary�����Type not recognised:  �1�zftpA�f�dқCABr!QC'd|�A$��db{�+k��A,�d$<z��\t��Ag���A�"��OA�'�Kk+�A�f�t1Af�t:j�AD(����A�f�tA�F`�Af�t�ACFt�A�F�A�NAf<z��A"1rU��"C��Fh�CF��A�F-A"4`
F��AB�
&��
F��Al��$+<A�:	�AV:R��Ei���A.;$�A<C�1A.=�	�A�F0	$A���1�A@Q	A�C,��+k�	A,Bb{�	A,C�	�A%�	AXC�1�AE�
A����;A �$+�f-A��@eA $+�f��A,�+�A���eA�C��
A.Mr]�A���Fx�A�Fl�Q
A.Pr]�AC��Fx�A,R
�A�& 
A"UrE
�C&`
A(�D1AV�
A��ANX2p�E�y�A"Y�E
�	C&`
A���Fx�A ���fx�tAAfی$q'A0%�A&`�9A�C�A.a�y�
A"b�E
��&`
A���FxmA ��fx�tACfی$�	A"irE
�Cfxrz��A.j$rqA"nrE
�
��xr*�-A��A.prA�A�C��A C-fX:+�mAD��1A.rr��A��-m�qA.w
+�A"��&AC Fl=emulate�curcontext:zf�localcurcontext:zfugetlocstatsremstatsdoitrstatremlistopt_vopt_sopt_Gopt_tintegerstatdo_closezfuget_print_timelocalprint��tim[1,4]/�tim[5,6]/�tim[7,8] �tim[9,10]:�tim[11,12].�tim[13,14]�zfuget_printprint�\nremote �rem (�zfuget_print_time�remstats�2��, �remstats[1] bytes)\nlocal �loc (�zfuget_print_time�locstats�2��, �locstats[1] bytes)�getopts:vsGt�optprint�zfuget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheckremlist�remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_nzfrglob �#remlist �remlist��rem:t�doitremstats�loczftplocal�loclocstats��<$1�remote�remrstatremstats��<<<'temporary file'��rstatprint�Server does not implement full command set required.�return�File not found on server: �rem�statcontinue�opt_vzfuget_print �locstats[1] != �remstats[1] �locstats�2��remstats�2��opt_s�Local file �loc more recent than remote,��but sizes are different.  Transfer anyway [y/n]? �readdoit�remstats�2��Local file �loc has same size as remote,��but local file is older. Transfer anyway [y/n]? �transferringfile�loc�doitzftp�rem�opt_tzfrtime�remstats�2� do_close zfclose�statACf�dқCABr!Q�'d|�A$�db{�+k��A C�d$z��<TA�gl��A����OA�'�Kk+�A�f�t1Af�t:j�AD�H��A�f�tA�F`�Af�t�ACF`uA�F�A��NA�f�ұ�z��A"#r���"���F���FL�A	Fh}A"&��	F��AB
&D
FL�AH�
�A.*ru;�9A��F��A0�,��+k+<A,0b{IA,1l�A�%�Ap�
�A&3��A
��F��A,5	�A�
&(	A��S;A �$+�f-A��@eA $+�f��A,�+�A���e9
A��a�
A.?r�
�A��F�
�
ACF��Q
A.Br�
�A"Cr�����
r*����KA"Er��C&A(�D1AF9A��ANH2p����
�A"I���C&A���F�
9
A ���f�
�t�
Af�ی�q'A0%�A&P���A�C�A.Q�
�	A"R���
�&A���F�
A ��f�
�t�ACf�ی��	A"Yr��Cf�
rz��A.Z�rAd��1A.^r��AB �$�f�����_+�A"c�&@ACF�aemulate�curcontext:zf�localcurcontext:zfuputlocstatsremstatsdoitrstatopt_vopt_sintegerstatdo_closezfuput_print_timelocalprint��tim[1,4]/�tim[5,6]/�tim[7,8] �tim[9,10]:�tim[11,12].�tim[13,14]�zfuput_printprint�\nremote �rem (�zfuput_print_time�remstats�2��, �remstats[1] bytes)\nlocal �loc (��locstats�2��, �locstats[1] bytes)�getopts�optprint�zfuget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheck�ZFTP_VERBOSE�Messages with code 550 are harmless.���rem:t�doitremstats�loc��loc: file not found�statcontinuezftplocal�loclocstats��<$1�remote�remrstatremstats��<<<'temporary file'��rstatprint�Server does not implement full command set required.�return�opt_vfile�loczfuput_print �locstats[1] != �remstats[1] �locstats�2��remstats�2��opt_s�Remote file �rem more recent than local,��but sizes are different.  Transfer anyway [y/n]? �readdoit�remstats�2��Remote file �rem has same size as local,��but remote file is older. Transfer anyway [y/n]? �transferring�doitzftp�remstat do_close zfclose�stat��5.8.1�P�debian/zsh-common//usr/share/zsh/functions/Zftp/zfanon����debian/zsh-common//usr/share/zsh/functions/Zftp/zfautocheck8���debian/zsh-common//usr/share/zsh/functions/Zftp/zfcd1��debian/zsh-common//usr/share/zsh/functions/Zftp/zfcd_matcho		,�debian/zsh-common//usr/share/zsh/functions/Zftp/zfcget	��X�debian/zsh-common//usr/share/zsh/functions/Zftp/zfclose	�T	`�debian/zsh-common//usr/share/zsh/functions/Zftp/zfcput�
W�debian/zsh-common//usr/share/zsh/functions/Zftp/zfdir����debian/zsh-common//usr/share/zsh/functions/Zftp/zffcache1	0�debian/zsh-common//usr/share/zsh/functions/Zftp/zfgcp�A��debian/zsh-common//usr/share/zsh/functions/Zftp/zfgetI���debian/zsh-common//usr/share/zsh/functions/Zftp/zfget_match-	�x�debian/zsh-common//usr/share/zsh/functions/Zftp/zfgoto��X�debian/zsh-common//usr/share/zsh/functions/Zftp/zfhere���debian/zsh-common//usr/share/zsh/functions/Zftp/zfinit�A��debian/zsh-common//usr/share/zsh/functions/Zftp/zflsAt4�debian/zsh-common//usr/share/zsh/functions/Zftp/zfmark����debian/zsh-common//usr/share/zsh/functions/Zftp/zfopen�W0�debian/zsh-common//usr/share/zsh/functions/Zftp/zfparams��
��debian/zsh-common//usr/share/zsh/functions/Zftp/zfpcp����debian/zsh-common//usr/share/zsh/functions/Zftp/zfput �Q��debian/zsh-common//usr/share/zsh/functions/Zftp/zfrglob!����debian/zsh-common//usr/share/zsh/functions/Zftp/zfrtime#	p�debian/zsh-common//usr/share/zsh/functions/Zftp/zfsession%j
���debian/zsh-common//usr/share/zsh/functions/Zftp/zfstat(+�debian/zsh-common//usr/share/zsh/functions/Zftp/zftp_chpwd)_��debian/zsh-common//usr/share/zsh/functions/Zftp/zftp_progress*���debian/zsh-common//usr/share/zsh/functions/Zftp/zftransfer,�O`�debian/zsh-common//usr/share/zsh/functions/Zftp/zftype-�i	��debian/zsh-common//usr/share/zsh/functions/Zftp/zfuget15�
��debian/zsh-common//usr/share/zsh/functions/Zftp/zfuputAfd�C��ABr!Q�'d|�A��d��z��K"A�CNACf�����zA"
r��"���F-�F��A�F��A"
CF@YA��TS�AR�Agd��,A�1.Ar9t;.A�
�A�,A\yA"
�Q�qA"R���A"�"1A R�A(	'd��!,A%P,A&��Ah	��A 	���f���,A(�A
Cf�,�,A+Dy.A,��AL��1A.R�A�F�AF��,A2��A�F	%�A6�1.A6r�+9|;,A7�	�,A8�K"
.A9�
5A�
1.A<r
Y�ABC����+
t�CF��
qA���
��+
t�ABF��F��A4��1AC
�
�AF
�
�emulate�curcontext:zf�localcurcontext:zfanonopt_1getopts�optprint�zfanon: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��EMAIL_ADDRdomainhost�HOST/etc/resolv.confdomain��������M����f����</etc/resolv.conf���:�domain����2���domain�HOST.�domain�host��������M����f����nslookup $HOST 2>/dev/null���:�Name:����2��oldvb�ZFTP_VERBOSEoldtm�ZFTP_TMOUTZFTP_VERBOSEZFTP_TMOUTzftpopen/dev/null�ZFTP_HOSTcloseZFTP_VERBOSE�oldvbZFTP_TMOUT�oldtm�Can't get your hostname.  Define �$EMAIL_ADDR by hand.�EMAIL_ADDR��USER@�host��Using �EMAIL_ADDR as anonymous FTP password.���1��ftp://���1��/���1%%/���opt_1anonymousparams�dirzfcdAC'9A'��A"=F��A���
�AR�AB�&��F�AB��+;$;0��AC|FThA�F�qAB&�F�A��1.A#��+;t;A	F�	QFA%`2
�����A	��|F0Elocallastloc�zfconfig�lastloc_�ZFTP_SESSION�ZFTP_VERBOSE��ZFTP_VERBOSE//0� ��+zftpseconds� unsetzftpseconds�ZFTP_HOSTzfopenreturndo_closezftptest/dev/null�lastloc�ZFTP_HOST��lastloc%%:��zfcd��lastloc��:�A�fd�C��ABr!Q'd|�A���.Ar�+9{AB�F�s$��F���ABCF�$�CF���A 	�VA �Rr�+
r�+%.A!�EA�	�A$}A	�f�+�������NA'p2r$+�r�+�A
Cf�+�����&A*r$+�AC�(�+���=A�'d��At

�
1A"
f�#�4�
�A
�fk�4�1.A7�
A�F0Iemulate�curcontext:zf�localcurcontext:zfcdzfautocheckreturn�HOME�HOME/��~��1#�HOME�� �# == 0 �zfconfig�lastdir_�ZFTP_SESSION�eval��${ZFTP_PWD:s!�1!�2!}�lastdir�ZFTP_PWDzftp��@��lastdir�zfconfig�curdir_�ZFTP_SESSION�zfconfig�lastdir_�ZFTP_SESSION�print�zfconfig�lastloc_�ZFTP_SESSION�Afd�C��ACF <�A	�VA�Rr�+qr�+�.A	��AC'����A ���,D`A4�E�A�.Aru�AF �ACG��K"�A
1.Ar�+�.A�K"
Q.Ar�+9{.A�K"zAC�,EA<�1A
uAC�,�A��,�A""(`2
����|;(�K"�A�
C	�A)
�A4
�f @p��z��������
�A,
��AC�,)qA�F\<+emulatesetoptextendedglob�HOME�HOME/��~��1#�HOME��localZFTP_VERBOSEmatchmbeginmend�ZFTP_SYSTEMUNIX�rcexpandparam��/���1%/��reply���M����f����zftp ls -lF $dir���:�d����:space:������:space:�������c8�����/��#reply���M����f����zftp dir $dir���:�d����:space:������:space:�������c8�������reply/��b�d����:space:������:space:�������c8�����/�����/�/�match�2���dir��dir/��WIDGET_wanteddirectoriesexpl�remote directory�compadd��dir��reply��dir��replyzfget_matchA�fd�C��ABr!Q'd|�AlCgd{bk+���E��zE�E�EE,EDA�gd\tA��Af��9���zA"r���"CF��CFT�A�Fp�A"�F�Al���<+�A	�VA�RrMqr��.A�A<��1.A��AF8A��u�u1A"YA��q,k+��,A${b�AX	Cj
�&A%��A B	��f��+:�'��+^�A
��,
A�
��V$A �$�+f1,AD�+A�\u�A�1.A0rE�A C��f`y!A$B�D-����3@�+A
&T
Q.A5rE�A
���F`yA
�&�ADC'�	�&A9�		=A���F`	eA�&	�
Q.A<�	�	=AC��F`
A�&
��A���A$D-����
�A"Ar
��C�-�%q.AC@�A�FLiemulate�curcontext:zf�localcurcontext:zfcgetstatopt_Gopt_tremlistlocstremstrstattsizegetopts�optprint�zfcget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_Gzfrglob �#remlist �remlist��rem:t��loczftp�rem��zftp local $loc�zftpremote�remrstatremst��<$1���<<<'temporary file'��rstatprint�Server does not support SIZE command.\n��Assuming you know what you're doing...�zftpgetat�rem�locst�1��locstatcontinue�Remote file not found: �rem�continue�locst�1��remst�1��Local file is larger!�continue�locst�1��Files are already the same size.�continue�locst�1��opt_tzfrtime�remst�2�return�statABr1�'D\�AF���curcontext:zf�localcurcontext:zfclosezftpcloseA�fd�C��ABr!Q'd|�ATCgd{bk+���E�E�EE A�C�1.ArE#.A Q.Ar�#.A qA ���f 9=AF��A��x�{b<+,A!k+��A"	�VA"�Rr-rE.A#k+�eA@	Cg�&A%RA	�F �.A'��]�A
���A�
��S$A �$�+f1,AD�+A�\u�A<F�
�.A0r9�A C��fTm=,A3D�A
&XQ.A5r9�A 
�$�f|����	�&A8���AC��FT		A�&	l
Q.A;�	��A��FT	�AC&
DqAC
iA��.ADr
�A,Bcf
��Cf|(�ED�	�A,B�f
�E��f|��GD�ACF��emulate�curcontext:zf�localcurcontext:zfcputstatlocstremstoffstailtype��echo abcd | tail +2c���echo abcd | tail --bytes=+2�print�I can't get your �`tail' to start from arbitrary characters.\n��If you know how to do this, let me know.�return�loc�rem�HOME�HOME/��~��rem#�HOME���Can't read file �loc���zftp local $loc�zftpremote�remrstatremst��<$1���<<<'temporary file'��rstatprint�Server does not support remote status commands.\n��You will have to find out the size by hand and use zftp append.�statcontinuezftp�rem�loc�remst�1��locst�1��Remote file is larger!�continue�locst�1��Files are already the same size.�continue offs = �remst[1] + 1 �tailtypetail+��offs�cappend��bytes�+�offsappendreturn�statA�fd�C��AF <ABrq��'���A,����z(HJ`�A'���AC'�4YA,�"N.Ar�+<�A�
�VA �Rr�+�r�+��AC&�A�&��.A#��+A	C&�,A'(5A@
'LPiY[J,A)��z�A
�A�	0�.A+H�	02.A-��+0"A"/@2
�����fk�4�A"0@2
�9�afk�4��ACF�$�A�F��A
�&�ABCF�$�CF���A<LP!P�A=	�VA=�Rre�re�	.A>��A��6��FAB`2r$+��=��AE�1AERY,AFx�.AG5�.AI�$q�AM�1AMR�,AN4.AO�	E,AQ	m,AR`	�Al��1VAS�2�	�P2
�	��	��ABVr

%
�fk�4�	�A"X
�
�X
�]Ad��1&A[r	��Afk�4�	�A"_��F�$�A�"16Ab@2
�	��	�A�f��!qA�C�A(CACF<PA<�f<�K"<+�F++�	��F�e�A �	�f<�K"<+A�f��	�emulatesetoptextendedglob�curcontext:zf�localcurcontext:zfdirfileoptlistredirnewargsforcecurdir�zfconfig�curdir_�ZFTP_SESSION�otherdir�zfconfig�otherdir_�ZFTP_SESSION�shiftbreak��rfd�����1���i = 1i <= �#optlist�optlist��i��curdir�curdir�curdir�otherdir�otherdir�otherdirzffcachereturnzfautochecki <= �#argvi++ �argv��i��HOME�HOME/�argv��i��~��argv[�i]#�HOME���redir�curdircurdir��TMPPREFIX�zfcurdir_��ZFTP_SESSION�_��zfconfig�curdir_�ZFTP_SESSION��curdir�curdir�otherdir��TMPPREFIX�zfotherdir_��ZFTP_SESSION�_��zfconfig�otherdir_�ZFTP_SESSION��otherdir�otherdir��*��file�newargs�force�newargs�zfconfig�otherargs_�ZFTP_SESSION��newargszfconfig�otherargs_�ZFTP_SESSION��newargs �# == 0 eval��PAGER:�/usr/bin/pager��$filezftptest��PAGER:�/usr/bin/pager���PAGER:�/usr/bin/pager�A"r�+$��G,AIA�C�1A	R�A�G�A���AG�JTA
A

��AD,A].A�Ah1.Ar�+$�ACFHaQA�A�F�localfcache_name�zfconfig�fcache_�ZFTP_SESSION��fcache_namevals���v�zfconfig��I�fcache_����zftp_fcache_�integer��vals��r�zftp_fcache_�i�� i++ zftp_fcache_�izfconfig�fcache_�ZFTP_SESSION��fcache_nameunset�fcache_name ��(P)#fcache_name� == 0 eval��fcache_name=(�${(f)�"�$(zftp ls)�"})�A�fd�C��ABr!Q'd|�A(C�d��z�k+�{b��A�g4HA�NAfl�9���zA"r���"C��F��CF0�A�FLaA"�F��AB�&(�F0�A���1FA"`2�$+��YA���F��A	F0�
�.A%�$+�A	���F�5A	�F0�A�
�Q=�A*�YA
�'d�K"Y,A,�A�C2,�<+�A/	�VA/�Rr��r9.A0�YA<��1.A2���A�F��A�
C�A5�A�
��k+�,A7{b9A���A �fp�+:�A"9r��Cf���q.A;4���AA	�VAA�Rr�+�r�+�.AB�	A B�+fp�+:�+D4�+A"GA�&pACF0�emulate�curcontext:zf�localcurcontext:zfgcpremlistopt_Gopt_tintegerstatdo_closegetopts�optprint�zfgcp: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheck�argv��1��zfgcp:  last argument must be a directory.��zfgcp:  not enough arguments.�argv��1��remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_Gzfrglob �#remlist �remlist�dir/��rem:t�zftp�rem�loc�opt_tzfrtime�HOME/��~��1#�HOME�� �do_close zfclose�statACfd�C��ABr!Q�'d|�A,d{bk+���z���ACg,L`A���A�f����zA"r���"F��F\�ACFx�A"��F�
ABC&TCF\�A��=��<+�A%	�VA%�R������.A&�A<
�1.A(�U�A
CFp�A<
�&�&1A+�A",k+��A�C�A-
��A�f�+:.A/L�+�,A1{b)A����A �Mf�+:A"3ra��f|Mq.A5L�A"<�&�A�F\�emulate�curcontext:zf�localcurcontext:zfgetremlistopt_Gopt_topt_cintegerstatdo_closegetopts:Gtc�optprint�zfget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheck�remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_Gzfrglob �#remlist �remlist�opt_czftp�rem��rem:t��loc�opt_tzfrtime �do_close zfclose�statAfd�C��ABC� 4�DlCF���A	�VA�R��+���+�.A	��A�y�c�VA�2�M��+9|;AC�d���A�' 5AB���s4����F��ApCMC�A
��A�'�K"�ABr|;�K")A$��H�b2d�ACg\xA�\�AC�x=A��A
�A C�fH�K"A��\A��\AC�x!A��xA4	f		4	d	y	�z�������	�A,	C&

$	d
=
t���
��A 
�fH�b
�A
C�
�
�qAGAC&DAp�
�A.
�iA,�&�
$	d
=�4�����AC�
��emulatezmodloadzsh/filesb:zf_lnreturn�HOME�HOME/��~��1#�HOME���ZFTP_SYSTEMUNIX�setoptlocaloptionsclobberextendedgloblocaltmpf��TMPPREFIX�zfgm��zf_ln��<<<''��tmpf�WIDGET��1%/���dir��dir/�zftpreply1reply2�����M������f����<$tmpf������dir�:��/�%/����������f����<$tmpf������dir�%�*�:��/��#reply1���M����f����<$tmpf���:�d����:space:������:space:�������c8�������reply1/��b�d����:space:������:space:�������c8�����/�����/�/�match�2�������f����<$tmpf���:�d����:space:������:space:�������c8�������reply2/��b�����:space:������:space:�������c8������/�match�2��_wanteddirectoriesexpl�remote directory�compadd�reply1_wantedfiles�remote file�compadd�reply2��1*�2�reply��<$tmpf�fcache_namezffcache�WIDGET_wantedcompaddfignore���P�fcache_name�A�fd�C��A�F <ABrq�'���AF�A�g���A���$��zA�C�ACf<q���zA"r]��"�Fp��F�A�F 5A"hCF��AX�
	�A�A��Fp%ACF�Ap-16A @2
����AC'��
,A"�2JbAH�$5NA�f ��.A$5}.A&�2J�QA'��A�
�$NA
�f ��A*",�Rr��r�!&d.A-��,A1EAX�
	�A3R�A
��Fp�A
CF�A���	�K",A9�	,A:	E,A;		q,A<�K"	�A�B��VA>�2r	�	�r

=AF
T
i
QVAA�Rr	���2r	�
�A"�F
�
="C
�
��F
T
��VAD�2r
�mr	��	A"&"H
�
�F
T
��A�G�8A�8UA�C��VAM�2r
=�
r	��A"�&"N
�
��F
T
�qA"f
=	�"P
�
�F
T
�emulatesetoptextendedglob�curcontext:zf�localcurcontext:zfgoto��ZFTP_BMFILE:���ZFDOTDIR:��HOME�/.zfbkmarks�typesetbkmarkslineopt_ngetopts�optprint�zfgoto: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )� �# != 1 �Usage: zfgoto bookmark��opt_n�/.ncftp/bookmarksoldifs�IFSreadbkmarks��line�1�����line[3]:-anonymous�@��line[2]�:��line[6]���/.ncftp/bookmarks�oldifs�ZFTP_BMFILE�line��:blank:�����:blank:����#��continuebkmarks���line%% ������line#* ���ZFTP_BMFILE��bkmarks��1���Bookmark �`�1' not found�userhost��line%%@����line��@���line%%:����line��:��ZFTP_USER�user�ZFTP_HOST�hostzfcd��dir:���anonymouszfanon�dir�zfconfig�lastloc_�ZFTP_SESSION���host�:��zfconfig�lastuser_�ZFTP_SESSION�zfopenparams��zftp params��params�1��params�2�ABr1C'D\�A�F���curcontext:zf�localcurcontext:zfherezfcd�PWDA�fd�C��A��.A��+t�ABCf L�DCFt�AB�� L����Ft�A�C6�61ACf L��A�G���
AB�<���
%L�q��ABC�<���
��C���AB��<���
)P��u��Ap�
�A"��F����<���
=�A�e��A�g�<��A%��A�F 9AF �ACF �A�F %A�F yA,C&�Ҭ��DX���A4�f�Ҭ�<Tl����A0�FҬ�(D`�����A,&	Ҭ�	@	\	�	�	�

$A	�ba�A"&PRr
A�R
y<	��A$	���&
�A
�F
�A��L4���m\���
�\�Hz�����u\�l��\�l�\�\�u������A(
@\�`z����D�A$
C��\�lT<
�A 
���\�\�D`A0
�F��������A���(A�0��Q��A>+�	zA(�'-PqA"
���f���Af�%�+A"@2
��
�ECf�hEA����A4Cf��-�����u\�����ACF�emulatezmodloadzsh/net/tcpreturnzsh/zftpzftpzsh/zutillocalzstyle�:zftp:*�progress�:zftp:*�progress�:zftp:*�update�:zftp:*��:zftp:*�titlebar�:zftp:*�titlebartruefunctionschpwd/dev/null�:zftp:*��:zftp:*�typesetzfconfiglastsessiondefaultaliaszfcd��noglob zfcd�zfget��noglob zfget�zfls��noglob zfls�zfdir��noglob zfdir�zfuget��noglob zfuget�autoloadzfanonzfautocheckzfcdzfcd_matchzfcgetzfclosezfcputautoloadzfdirzffcachezfgcpzfgetzfget_matchzfgotozfherezfinitzflsautoloadzfmarkzfopenzfparamszfpcpzfputzfrglobzfrtimezfsessionautoloadzfstatzftp_chpwdzftp_progresszftransferzftypezfugetzfuput���_patcomps���_patcomps��r�_zf���compctlsetoptcompletealiasescompctl�p[1]��(open params user login type ascii binary mode put putat
    get getat append appendat ls dir local remote mkdir rmdir delete
    close quit)��w[1,cd][1,ls][1,dir][1,rmdir]�zfcd_match�W[1,get*]��w[1,delete][1,remote]��w[1,open][1,params]�hosts�w[1,session]��${$(zftp session):#$ZFTP_SESSION}�compctlzfcd_matchcompctlcompctlcompctl�$(awk ��'�{print $1}��'� ${ZFTP_BMFILE:-${ZDOTDIR:-$HOME}/.zfbkmarks})��W[1,-*n*]��$(awk -F, ��'�NR > 2 { print $1 }��'� ~/.ncftp/bookmarks)�compctl�${$(zftp session):#$ZFTP_SESSION}�zftransfer_matchlocalsess��1%%:��oldsess�ZFTP_SESSION�sesszftpsessionzfget_match��1��:��oldsesssessionreply��sess�:���reply�compctl�$(zftp session)��C[0,*:*]�zftransfer_matchzftransferreturnAfd�C��ABr!QC'd|��A	�VA�Rr�+�r�+�.A	��AF0$�A�f`�b<+emulate�curcontext:zf�localcurcontext:zfls�HOME�HOME/��~��1#�HOME��zfautocheckzftpACfd�C��A�F <ABrq��'���A�F�ACg���A�G�A��1A�!A��$�NA�fT��A*"�Rri�ri�C&�.AqA���A�A4��Af<۔�UA�F��	�A#�A	��F<�A	CF��A�
1A(
�i.A)��QA*
�e.A+���A���F<	A�F��A@���A�f<۔�Uemulatesetoptextendedglob�curcontext:zf�localcurcontext:zfmark��ZFTP_BMFILE:���ZDOTDIR:��HOME�/.zfbkmarks�typesetbkmarksline�ZFTP_BMFILEread�line��:blank:�����:blank:����#��continuebkmarks���line%% ������line#* ���ZFTP_BMFILE �# == 0 ���ko�bkmarks�print��line ��bkmarks[�line]��return �# > 1 �Usage: zfmark [bookmark]��ZFTP_HOSTbkmarks��1����ZFTP_USER�@��ZFTP_HOST�:��ZFTP_PWD���zfconfig�lastloc_�ZFTP_SESSION����zfconig[lastuser_�ZFTP_SESSION]�@��zfconfig[lastloc_�ZFTP_SESSION]���No current or recent ZFTP session to bookmark.��ZFTP_BMFILEACfd�C��ABr!Q�'d|�A �d��z�K"��A��NA�f����zA"r)��"���F<U�F��AF�A"4�Fh��A�1.Ar�+9|;,A��,A�K"�.A�A��5�1.ArA�AB�f\p<+�F��A��.A r$+�ATC	�	1ACF\�A�F\�A�F���A"(�"
F�<+(��A�
��1A
�F\pA"+
��
�F\�A",
�)F��ACF��A4C�1A1
�UA�FhUemulate�curcontext:zf�localcurcontext:zfopenopt_1setparamsgetopts�optprint�zfopen: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )���1��ftp://���1��/���1%%/���opt_1zftpopenloginclose �# > 0 zfparams�ZFTP_HOST�setparams�dirzfcdAfd�C��ABr!QC'd|�A��51NAp2r$+�r�+�A(C'd��E�+Z,A
�+ZA"
���F��AH,�+Z���(LtACF��QAA")����A
�AM�A
1.Ar�+q.A��q.A��A�fl�<+emulate�curcontext:zf�localcurcontext:zfparamssess�ZFTP_SESSION��zfconfig�fcache_�sess���keyunsetfcachelastloclastdircurdirotherdirotherargslastuser�zfconfig[��key�_��sess�]� �# > 0  �# < 2  �# < 3 �?���?Password on ��1�: ��?Password for ��2##�\?� on ��1�: �zftpparamsAfd�C��ABr!Q�'d|�A�gdk+�{bAg���AB�&�FL�A�V0�vA�R�$+��Rr�+ir�+|;AC'd�K"�,A��A	�VA�Rr��r��.A�K"A"B`2
����|;�K"]Ap
,{b<+,A!k+�}A B�$�f�����"��$��A%	�VA%�Rr�+�r�+�.A&�
A 
$�+f�����+,A)��+A�
��vA*�2����2rE���rq�	A $�+f�����.A-��+A"1
C&<A�FL]emulate�curcontext:zf�localcurcontext:zfpcpintegerstatdo_closezfautocheckreturn�.�..��argv��1�argv��1��dir�HOME�HOME/��~��dir#�HOME����dir/��dir��loc:t�zftp�rem�loc�HOME/��~��2#�HOME���ZFTP_CODE�ZFTP_REPLY��Is a directory���2/�1:t �do_close zfclose�statACfd�C��ABr!Q�'d|�Agd��z�AC���4A���A�fL����zA"rm��"F��F�ACF,AA"t�F��AC&�Ak8��A��{bk+�A�G8XA%lA��3�{b<+A����A
��Al��A��AC%���A�&q.Ak+��q.Ak+�%A �$�fH���]A"qX�+A|�1AFH�,A��AB�X�A�&�A���A�AfHD]ACF��A"qX�+A�F$A�FDaA�F�<+,A@�+A"B�&DAFd�emulate�curcontext:zf�localcurcontext:zfputopt_rintegerstatdo_closeabortgetopts�optprint�zfget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheckzfput_sublocalsubdirsintegerstatsubdirs�opt_r�locsubdirs�subdirscontinue��loc:t�zftp�rem �? testabort stat break �#subdirs  && ! abort mkdir��subdirs�1��zfput_sub��subdirs�1��/��ND�shiftsubdirsreturn�statzfput_substat �do_close zfclosereturn�statAfd�C��ACF <A(��p���K"��J�A"C�����1`�A�F��A\C
�
1nA!�2���`R
����A�F<�At	�M��.A&����At	��+A,�$�+0f�bA�FXm:qA�5'�VA,�2ra�r�9|;�A.
1.A.r��.A0�K"�q.A2�K"z,A4�Ax
C+#A,�0$�+f�bA��Xq�AC�,E�AGp�AC&�,A>��A��,
ACFTiemulatesetoptextendedgloblocalnondirfileszfrglobzstyle��curcontext�remote�globzfrglobevalpat��$�1�pat���������zfrglob���������returnzftp��pat�/dev/nulleval��1=(�$(<�$1))���<<<'temporary file'��ZFTP_SYSTEMUNIX��pat��/���pat%/��nondir��pat���/�zftp��dir�/dev/nullfiles��<$1���<<<'temporary file'�files��files:t�localfcache_namezffcachenondir�pat���P�fcache_name�eval��1=(�${files:/^�${~nondir}})�Afd�C��ACF DA<��x����s{j��BsKj+��AgxL�(A��1A
��+.A��+	qAC��mA"
����A"R�F �,A�=,As{ji,A��,A�B�,AsKj�,A+�%AX�
,�YA ���������).A$ET�A 	�������!M,A'E��,A)�A
������	EA������+emulatezmodloadzsh/datetimelocaltimegmtimeloctimeyearmdaytmpdatedays_since_epoch��zftp remote $2 2>/dev/null��time�time�2�return�time�1,4��time�5,6��time�7,8��time�9,10��time�11,12��time�13,14��1970..��( �year - 1)��strftimetmpdate�%Y/%m/%d���y�/12/31days_since_epoch��strftime "%j" $tmpdate�tmpdate�%Y/%m/%d��year/�mon/��( �mday - 1 )�days_since_epoch��( �sec + 60 * ( �min + 60 * (�hr + 24 * �days_since_epoch))  )��%Y%m%d%H%M%S���EPOCHSECONDS�touch��time�1,12��.��time�13,14��ACfd�C��ABr!Q�'d|�A(�d��z��4A��	�A�fTu��zA"r���"���F���FH�AFdy.A
4�A"��F��A�C�1vA�R�$+��2@2
�ARe�$+�A���F��AFH�A����A
�-AGdHA�C,H]A�f�t��AT�	�1.Ar��AF���A�&�QA!
�	A�F$8A�	C�A%
�YA�	��1.A&�u�A	�'d5A
f$lu,A)��A
�F��A��F�MACFH�AC � 1A1
�eA(�'dc+"�E�+Z,A3�+Z	%A"4
�	�
F	�	�AH
C,�+Z	�	�	�

,
P
xA
�F	�
�Af$-AC&HA"<
�AFHeAP�	�.A>r$+�A�F�}A&HA�'d��Af$D�+APC	�.AE�e�,AF��A�&
$emulate�curcontext:zf�localcurcontext:zfsessionopt_lopt_vopt_oopt_dhadoptsgetopts�:lovd��optprint�zfsession: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��hadopts�opt_d�Usage: zfsession ( [ -lvod ] | session )��opt_vsess��zftp session����(r.15.. ..:.)sess�\t��zfconfig[lastloc_�sess]:-not connected���sess�ZFTP_SESSION� *��opt_lzftpsession�opt_o�zfconfig�lastsession��ZFTP_SESSIONcursession�ZFTP_SESSIONsessionzfconfig�lastsession��cursession�ZFTP_SESSION�zfsession: no previous session.���1:��ZFTP_SESSION���zfconfig�fcache_�del���keyunsetfcachelastloclastdircurdirotherdirotherargslastuser�zfconfig[��key�_��del�]�rmsession�del�hadopts�stat�ZFTP_SESSIONoldsession��ZFTP_SESSION:�default�session�ZFTP_SESSION�oldsessionzfconfig�lastsession�zftp_chpwdA�fPAFh�AB
r���'�<A8�G�J\�E��zEpA�CNACf�����zA"r���"���F���FP�A�Fl�A"�CF�A"
�I�F��A�C[O1A
��A�F�A�F�mAF��A"
�
CF�AA��=91A
��A�F��A"
�=F�uACF��A�f�t�=A���1.Ar��L�AF��Q.A!r���A�F��qA	F�A	�f�t�1A�	��1.A'r}��A
F��Q.A)r���A
�F��qAF�	qA�F�	)qA�F�	}A"3
�	�
F�
E.A5\�A"9
�CF�AA�F��A�F�Af�t�}A�CL��
(A��-
=
0
}A�f�t�
�
0
�ACf�t�
�
0A�f�t�
0;	ACf�t�5A&�A���FAJ`2
��r��
A�F�$�AF�A�'�l���A�f���A�FP�setoptlocaloptionsunsetunsetoptksharrays�curcontext:zf�localcurcontext:zfstatstatopt_vgetopts�optprint�zfstat: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )��ZFTP_SESSION�Session:\t�ZFTP_SESSION��ZFTP_HOST�Host:\t\t�ZFTP_HOST��Port:\t\t�ZFTP_PORT��IP:\t\t�ZFTP_IP��ZFTP_SYSTEM�System type:\t�ZFTP_SYSTEM��ZFTP_USER�User:\t\t�ZFTP_USER ��ZFTP_ACCOUNT�Account:\t�AFTP_ACCOUNT��Directory:\t�ZFTP_PWD��Transfer type:\t��ZFTP_TYPEImage�ZFTP_TYPEAsciiUnknown�Transfer mode:\t��ZFTP_MODEStream�ZFTP_MODEBlockUnknown�No user logged in.��Not connected.��zfconfig�lastloc_�ZFTP_SESSION��Last location:\t�zfconfig[lastloc_�ZFTP_SESSION]��ZFTP_REPLY�Last reply:\t�ZFTP_REPLY��Verbosity:\t�ZFTP_VERBOSE��Timeout:\t�ZFTP_TMOUT��Preferences:\t�i = 1i <= ��#ZFTP_PREFS�i++ �ZFTP_PREFS��i��pP��Passive ��sS��Sendport ��dD��Dumb ���ZFTP_PREFS[�i]???��ZFTP_HOST�opt_vzfautocheck�Status of remote server:�ZFTP_VERBOSEzftpquoteSTAT�statA���.A�)A�'���A"@2
�a���fk�4��,A�ACFH$�AHH1ARmA"@2
����fk�4��,A)A"�������&5qA"
�),A)�,A�A�G��A($#�A" @2���������AC'����AA""����"����A��!
09A	fXr��q0���$A	�fXr��=�ZFTP_PWD�zfconfig�lastdir_�ZFTP_SESSION�localcurdir�zfconfig�curdir_�ZFTP_SESSION��curdir�curdir�curdirzfconfig�otherargs_�ZFTP_SESSION�zffcache�ZFTP_USER�zfotherdir�zfotherdir�zfotherdirzfconfig�lastdir_�ZFTP_SESSION�zstyle�:zftp�curcontext�chpwdzfconfig�lastloc_�ZFTP_SESSION���ZFTP_HOST:�ZFTP_PWD�zfconfig�lastuser_�ZFTP_SESSION���ZFTP_USER�args�:zftp�curcontext�titlebar�zfconfig�lastloc_�ZFTP_SESSION����str��%m: %~  �str��TERMsun�cmdprint�\033]l�str\033�\��xterm�rxvtdttermEtermkterm�\033]2;�str\a�A �G0�A�L��i�A��L���00A&"pR��r%ACF`�A��Z�Z1A
�}A"�}4;"�"�&`A'��A�C3�-�&A!��A�',AA,�$��vA#�2r%�p2r�����A@	�A$A	C��Fl�A	�'0PuA
'��A 
C��fl�t�qqA 
���flt�]qA ���flt�)A���VA0�2r}4;r��ACF		,A���&lqA 
G	\<�	|	�localstyleupdatezstyle�:zftp�curcontext�progress�:zftp�curcontext��style��none�return�ZFTP_TRANSFER ��+zftpseconds�  SECONDS - zftpseconds < update size��ZFTP_TSIZE:��ZFTP_SIZE���size:�0�frac���( ZFTP_COUNT * 100 / size )�%���+COLUMNS��COLUMNS ! ��+zftpseconds� print��ZFTP_FILE (�size bytes): �ZFTP_TRANSFER�integermaxwidth��( COLUMNS - 7 )�width���( ZFTP_COUNT * maxwidth / size )���\r%S��(l:width:):-�%s��(l:maxwidth-width:):-�: ��frac�%%��\r�ZFTP_FILE (�size bytes): �ZFTP_TRANSFER �frac��\r�ZFTP_FILE: �ZFTP_TRANSFER �ZFTP_COUNT���+zftpseconds�unsetzftpsecondstypesetzftpseconds�SECONDSA�fd�C��ABr!Q'd|�A,C�d�� 8YA\�
�
1&A�$+�A��F��ACF`��A	�	1.Ar�+9�;,A�}.A�AF���A	�	1.Ar�+9�;,A�!.A EA�F�e�A�FA`RR�r�|;.A �A`�
�.Ar5QA��F�mACF`�A	f$85AB	C&X	CF`�AGd�AC������A��FA.`2
�-�-HA�gd\�Ax+�*A,�$�+Lf1A��t�IA"4r��4��A�c)AC��T�4XA�fl�+:���A�fl��A"&�fl���		A�'	$	<�+Afl	P	qA�F	�	�emulate�curcontext:zf�localcurcontext:zftransfersess1sess2file1file2oldsess��ZFTP_SESSION�print�Usage: zftransfer sess1:file1 sess2:file2�return��1%%:����1��:���sess1:��ZFTP_SESSION���2%%:����2��:���sess2:��ZFTP_SESSION��file2���file2���file1:t���sess1�sess2�zftransfer: must use two distinct sessions.�zftpsessionzfautocheckstylezstyle�:zftp:zftransfer�progress�stylenoneZFTP_TSIZEarrayzftpremote�file1/dev/nullarray��<$1���<<<'temporary file'���arrayZFTP_TSIZE�array�1�zstyleprogressnonezftp�file1session�sess2zfautocheck�file2localstatsession�oldsessreturn�statA�GABr-]'p�A�F�$�A�;��A�,A	A���	1.A
rIJA�F`yAF��	Q.A
rI
A�F`A�F��qACF��qA��1.A��+y.A
�VA�R��+���+�.AJ�AC��F`=A�F��Af�Ilocaltype�curcontext:zf�curcontext:zftypezfautocheck �# == 0 ��zftp type��typeprint�Current type is image (binary)�return�Current type is ASCII���i�a�sc�ii������i�i�m�age������i�b�in�ary�����Type not recognised:  �1�zftpA�fd�C��ABr!QC'd|�A$��d{bk+���A,�d$<��z\t��Ag����A"��OA�'kK��+A�ft�1Aft��j:DA(����A�ft�A�F`�Aft��ACFt�A�F�A�NAf<��zA"1rU��"C��Fh�CF��A�F-A"4`
F��AB
�&�
�F��Al̬$<+�A:	�VA:�R�Ei���.A;$�A<C�1.A=�	�A�F	0$A����1A@	QA�C�,k+�	�,AB{b	�,AC	��A%	�AXC��1AE�
A����;A �$�+f-A��@eA $�+f��,A��+A���eA�C�
�.AMr]�A���Fx�A�Fl�
Q.APr]�AC��Fx�,AR
�A�&
 A"Ur
E�C&
`A(�D1AV
�A��NAXp2�E�y�A"Y�
E�	C&
`A���Fx�A ���fxt�AAf��$'qA0%�&A`�9A�C�.Aa�y�
A"b�
E��&
`A���FxmA ��fxt�ACf��$	�A"ir
E�Cfx�zr�.Aj$rqA"nr
E�
��x�*r-A��.AprA�A�C��A C-fX�+:mAD��1.Arr��A��-m�q.Aw
�+A"��&A CFl=emulate�curcontext:zf�localcurcontext:zfugetlocstatsremstatsdoitrstatremlistopt_vopt_sopt_Gopt_tintegerstatdo_closezfuget_print_timelocalprint��tim[1,4]/�tim[5,6]/�tim[7,8] �tim[9,10]:�tim[11,12].�tim[13,14]�zfuget_printprint�\nremote �rem (�zfuget_print_time�remstats�2��, �remstats[1] bytes)\nlocal �loc (�zfuget_print_time�locstats�2��, �locstats[1] bytes)�getopts:vsGt�optprint�zfuget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheckremlist�remlist�HOME�remlist�HOME/��~��remlist#�HOME���opt_nzfrglob �#remlist �remlist��rem:t�doitremstats�loczftplocal�loclocstats��<$1�remote�remrstatremstats��<<<'temporary file'��rstatprint�Server does not implement full command set required.�return�File not found on server: �rem�statcontinue�opt_vzfuget_print �locstats[1] != �remstats[1] �locstats�2��remstats�2��opt_s�Local file �loc more recent than remote,��but sizes are different.  Transfer anyway [y/n]? �readdoit�remstats�2��Local file �loc has same size as remote,��but local file is older. Transfer anyway [y/n]? �transferringfile�loc�doitzftp�rem�opt_tzfrtime�remstats�2� do_close zfclose�statACfd�C��ABr!Q�'d|�A$�d{bk+���A C�d$��z<TA�gl���A���OA�'kK��+A�ft�1Aft��j:DA�H��A�ft�A�F`�Aft��ACF`uA�F�A��NA�f������zA"#r���"���F���FL�A	Fh}A"&�	�F��AB
&D
FL�AH
��.A*ru9�;A��F��A0��,k+�<+,A0{bI,A1l�A�%�Ap�
�&A3��A
��F��,A5	�A
�&	(A��S;A �$�+f-A��@eA $�+f��,A��+A���e
9A�a�
�.A?r
��A��F
�
�ACF��
Q.ABr
��A"Cr����
��*r��K�A"Er��C&A(�D1AF9A��NAHp2����
�A"I���C&A���F
�
9A ���f
�t�
�Af����'qA0%�&AP���A�C�.AQ�
�	A"R���
�&A���F
�A ��f
�t��ACf����	�A"Yr��Cf
��zr�.AZ�rAd��1.A^r��A B�$�f�����_�+A"c�&@ACF�aemulate�curcontext:zf�localcurcontext:zfuputlocstatsremstatsdoitrstatopt_vopt_sintegerstatdo_closezfuput_print_timelocalprint��tim[1,4]/�tim[5,6]/�tim[7,8] �tim[9,10]:�tim[11,12].�tim[13,14]�zfuput_printprint�\nremote �rem (�zfuput_print_time�remstats�2��, �remstats[1] bytes)\nlocal �loc (��locstats�2��, �locstats[1] bytes)�getopts�optprint�zfuget: bad option: -�OPTARG�returneval�opt_�opt=1� OPTIND > 1 shift��( OPTIND - 1 )�zfautocheck�ZFTP_VERBOSE�Messages with code 550 are harmless.���rem:t�doitremstats�loc��loc: file not found�statcontinuezftplocal�loclocstats��<$1�remote�remrstatremstats��<<<'temporary file'��rstatprint�Server does not implement full command set required.�return�opt_vfile�loczfuput_print �locstats[1] != �remstats[1] �locstats�2��remstats�2��opt_s�Remote file �rem more recent than local,��but sizes are different.  Transfer anyway [y/n]? �readdoit�remstats�2��Remote file �rem has same size as local,��but remote file is older. Transfer anyway [y/n]? �transferring�doitzftp�remstat do_close zfclose�stat