MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 3.136.20.207
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/net/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/net/tramp-sh.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:37 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/net/tramp-sh.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\302\303\304\305\306\301\307\310&\210\302\311\312\313\306\301\307\314&\210\302\315\316\317\306\301\307\320&\207" [require tramp custom-declare-variable tramp-inline-compress-start-size 4096 "The minimum size of compressing where inline transfer.\nWhen inline transfer, compress transferred data of file\nwhose size is this value or above (up to `tramp-copy-size-limit').\nIf it is nil, no compression at all will be applied." :group :type (choice (const nil) integer) tramp-copy-size-limit 10240 "The maximum file size where inline copying is preferred over an out-of-the-band copy.\nIf it is nil, out-of-the-band copy will be used without a check." (choice (const nil) integer) tramp-terminal-type "dumb" "Value of TERM environment variable for logging in to remote host.\nBecause Tramp wants to parse the output of the remote shell, it is easily\nconfused by ANSI color escape sequences and suchlike.  Often, shell init\nfiles conditionalize this setup based on the TERM environment variable." string] 8)
#@48 Escape sequences produced by the "ls" command.
(defconst tramp-color-escape-sequence-regexp "[[;0-9]+m" (#$ . 1590))
#@166 String used to recognize end of output.
The '$' character at the end is quoted; the string cannot be
detected as prompt when being sent on echoing hosts, therefore.
(defvar tramp-end-of-output (byte-code "\301\302\303\304!\305 P!\"\207" [process-environment format "///%s#$" md5 prin1-to-string current-time-string] 5) (#$ . 1715))
#@40 Prompt when establishing a connection.
(defconst tramp-initial-end-of-output "#$ " (#$ . 2054))
(byte-code "\303\304\305\"\210\303\304\306\"\210\303\304\307\"\210\303\304\310\"\210\303\304\311\"\210\303\304\312\"\210\303\304\313\"\210\303\304\314\"\210\303\304\315\"\210\303\304\316\317\320\321\322\323\324\325\326\327\330CDD\331BBBBBBBBB\"\210\303\304\332\"\210\303\304\333\"\210\303\304\334\"\210\303\304\335\"\210\303\304\336\"\210\303\304\337\"\210\303\304\340\"\210\303\304\341\"\210\303\304\342\"\210\303\304\343\"\210\303\304\344\"\210\303\304\345\"\210\303\304\346\"\210\303\304\347\350\351\352\353\354\355\356	#C\357BBBBD\360BBB\"\210\303\304\361\"\210\303\304\362\"\210\303\304\363\"\210\303\364\n\365B\"\210\303\366\367\370B\"\210\303\366\371\372\373 E\"\207" [tramp-terminal-type tramp-initial-end-of-output tramp-local-host-regexp add-to-list tramp-methods ("rcp" (tramp-login-program "rsh") (tramp-login-args (("%h") ("-l" "%u"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "rcp") (tramp-copy-args (("-p" "%k") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t)) ("remcp" (tramp-login-program "remsh") (tramp-login-args (("%h") ("-l" "%u"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "rcp") (tramp-copy-args (("-p" "%k"))) (tramp-copy-keep-date t)) ("scp" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "scp") (tramp-copy-args (("-P" "%p") ("-p" "%k") ("-q") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("scp1" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-1") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "scp") (tramp-copy-args (("-1") ("-P" "%p") ("-p" "%k") ("-q") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("scp2" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-2") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "scp") (tramp-copy-args (("-2") ("-P" "%p") ("-p" "%k") ("-q") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("scpc" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-o" "ControlPath=%t.%%r@%%h:%%p") ("-o" "ControlMaster=yes") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "scp") (tramp-copy-args (("-P" "%p") ("-p" "%k") ("-q") ("-r") ("-o" "ControlPath=%t.%%r@%%h:%%p") ("-o" "ControlMaster=auto"))) (tramp-copy-keep-date t) (tramp-copy-recursive t) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("scpx" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-e" "none") ("-t" "-t") ("%h") ("/bin/sh"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "scp") (tramp-copy-args (("-P" "%p") ("-p" "%k") ("-q") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("sftp" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "sftp")) ("rsync" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "rsync") (tramp-copy-args (("-e" "ssh") ("-t" "%k") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-keep-tmpfile t) (tramp-copy-recursive t)) "rsyncc" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-o" "ControlPath=%t.%%r@%%h:%%p") ("-o" "ControlMaster=yes") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "rsync") (tramp-copy-args (("-t" "%k") ("-r"))) tramp-copy-env ("RSYNC_RSH") "ssh -o ControlPath=%t.%%r@%%h:%%p -o ControlMaster=auto" ((tramp-copy-keep-date t) (tramp-copy-keep-tmpfile t) (tramp-copy-recursive t)) ("rsh" (tramp-login-program "rsh") (tramp-login-args (("%h") ("-l" "%u"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("remsh" (tramp-login-program "remsh") (tramp-login-args (("%h") ("-l" "%u"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("ssh" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("ssh1" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-1") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("ssh2" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-2") ("-e" "none") ("%h"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("sshx" (tramp-login-program "ssh") (tramp-login-args (("-l" "%u") ("-p" "%p") ("-e" "none") ("-t" "-t") ("%h") ("/bin/sh"))) (tramp-async-args (("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-gw-args (("-o" "GlobalKnownHostsFile=/dev/null") ("-o" "UserKnownHostsFile=/dev/null") ("-o" "StrictHostKeyChecking=no"))) (tramp-default-port 22)) ("telnet" (tramp-login-program "telnet") (tramp-login-args (("%h") ("%p"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-default-port 23)) ("su" (tramp-login-program "su") (tramp-login-args (("-") ("%u"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("sudo" (tramp-login-program "sudo") (tramp-login-args (("-u" "%u") ("-s") ("-H") ("-p" "Password:"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("ksu" (tramp-login-program "ksu") (tramp-login-args (("%u") ("-q"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("krlogin" (tramp-login-program "krlogin") (tramp-login-args (("%h") ("-l" "%u") ("-x"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("plink" (tramp-login-program "plink") (tramp-login-args (("-l" "%u") ("-P" "%p") ("-ssh") ("%h"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-default-port 22)) ("plink1" (tramp-login-program "plink") (tramp-login-args (("-l" "%u") ("-P" "%p") ("-1" "-ssh") ("%h"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-default-port 22)) "plinkx" (tramp-login-program "plink") tramp-login-args ("-load") ("%h") ("-t") format "env 'TERM=%s' 'PROMPT_COMMAND=' 'PS1=%s'" (("/bin/sh")) ((tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c"))) ("pscp" (tramp-login-program "plink") (tramp-login-args (("-l" "%u") ("-P" "%p") ("-ssh") ("%h"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "pscp") (tramp-copy-args (("-l" "%u") ("-P" "%p") ("-scp") ("-p" "%k") ("-q") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t) (tramp-default-port 22)) ("psftp" (tramp-login-program "plink") (tramp-login-args (("-l" "%u") ("-P" "%p") ("-ssh") ("%h"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-c")) (tramp-copy-program "pscp") (tramp-copy-args (("-l" "%u") ("-P" "%p") ("-sftp") ("-p" "%k") ("-q") ("-r"))) (tramp-copy-keep-date t) (tramp-copy-recursive t)) ("fcp" (tramp-login-program "fsh") (tramp-login-args (("%h") ("-l" "%u") ("sh" "-i"))) (tramp-remote-shell "/bin/sh") (tramp-remote-shell-args ("-i") ("-c")) (tramp-copy-program "fcp") (tramp-copy-args (("-p" "%k"))) (tramp-copy-keep-date t)) tramp-default-method-alist ("\\`root\\'" "su") tramp-default-user-alist "\\`\\(?:ksu\\|su\\(?:do\\)?\\)\\'" (nil "root") "\\`\\(?:fcp\\|krlogin\\|r\\(?:cp\\|emcp\\|sh\\)\\|telnet\\)\\'" nil user-login-name] 13)
#@71 Default list of (FUNCTION FILE) pairs to be examined for rsh methods.
(defconst tramp-completion-function-alist-rsh '((tramp-parse-rhosts "/etc/hosts.equiv") (tramp-parse-rhosts "~/.rhosts")) (#$ . 11272))
#@71 Default list of (FUNCTION FILE) pairs to be examined for ssh methods.
(defconst tramp-completion-function-alist-ssh '((tramp-parse-rhosts "/etc/hosts.equiv") (tramp-parse-rhosts "/etc/shosts.equiv") (tramp-parse-shosts "/etc/ssh_known_hosts") (tramp-parse-sconfig "/etc/ssh_config") (tramp-parse-shostkeys "/etc/ssh2/hostkeys") (tramp-parse-sknownhosts "/etc/ssh2/knownhosts") (tramp-parse-rhosts "~/.rhosts") (tramp-parse-rhosts "~/.shosts") (tramp-parse-shosts "~/.ssh/known_hosts") (tramp-parse-sconfig "~/.ssh/config") (tramp-parse-shostkeys "~/.ssh2/hostkeys") (tramp-parse-sknownhosts "~/.ssh2/knownhosts")) (#$ . 11484))
#@74 Default list of (FUNCTION FILE) pairs to be examined for telnet methods.
(defconst tramp-completion-function-alist-telnet '((tramp-parse-hosts "/etc/hosts")) (#$ . 12118))
#@70 Default list of (FUNCTION FILE) pairs to be examined for su methods.
(defconst tramp-completion-function-alist-su '((tramp-parse-passwd "/etc/passwd")) (#$ . 12296))
#@78 Default list of (FUNCTION REGISTRY) pairs to be examined for putty sessions.
(defconst tramp-completion-function-alist-putty (byte-code "\301\302>\203\303\202\f\304DC\207" [system-type tramp-parse-putty (windows-nt) "HKEY_CURRENT_USER\\Software\\SimonTatham\\PuTTY\\Sessions" "~/.putty/sessions"] 3) (#$ . 12468))
(byte-code "\300\301\302\"\210\303\304\305\306\307\301\310\311&\210\303\312\313\314\307\301\310\315&\210\303\316\317\320\307\301\310\321\322N\203,\323\202-\324&\207" [eval-after-load tramp (progn (tramp-set-completion-function "rcp" tramp-completion-function-alist-rsh) (tramp-set-completion-function "remcp" tramp-completion-function-alist-rsh) (tramp-set-completion-function "scp" tramp-completion-function-alist-ssh) (tramp-set-completion-function "scp1" tramp-completion-function-alist-ssh) (tramp-set-completion-function "scp2" tramp-completion-function-alist-ssh) (tramp-set-completion-function "scpc" tramp-completion-function-alist-ssh) (tramp-set-completion-function "scpx" tramp-completion-function-alist-ssh) (tramp-set-completion-function "sftp" tramp-completion-function-alist-ssh) (tramp-set-completion-function "rsync" tramp-completion-function-alist-ssh) (tramp-set-completion-function "rsyncc" tramp-completion-function-alist-ssh) (tramp-set-completion-function "rsh" tramp-completion-function-alist-rsh) (tramp-set-completion-function "remsh" tramp-completion-function-alist-rsh) (tramp-set-completion-function "ssh" tramp-completion-function-alist-ssh) (tramp-set-completion-function "ssh1" tramp-completion-function-alist-ssh) (tramp-set-completion-function "ssh2" tramp-completion-function-alist-ssh) (tramp-set-completion-function "ssh1_old" tramp-completion-function-alist-ssh) (tramp-set-completion-function "ssh2_old" tramp-completion-function-alist-ssh) (tramp-set-completion-function "sshx" tramp-completion-function-alist-ssh) (tramp-set-completion-function "telnet" tramp-completion-function-alist-telnet) (tramp-set-completion-function "su" tramp-completion-function-alist-su) (tramp-set-completion-function "sudo" tramp-completion-function-alist-su) (tramp-set-completion-function "ksu" tramp-completion-function-alist-su) (tramp-set-completion-function "krlogin" tramp-completion-function-alist-rsh) (tramp-set-completion-function "plink" tramp-completion-function-alist-ssh) (tramp-set-completion-function "plink1" tramp-completion-function-alist-ssh) (tramp-set-completion-function "plinkx" tramp-completion-function-alist-putty) (tramp-set-completion-function "pscp" tramp-completion-function-alist-ssh) (tramp-set-completion-function "fcp" tramp-completion-function-alist-ssh)) custom-declare-variable tramp-remote-path '(tramp-default-remote-path "/bin" "/usr/bin" "/sbin" "/usr/sbin" "/usr/local/bin" "/usr/local/sbin" "/local/bin" "/local/freeware/bin" "/local/gnu/bin" "/usr/freeware/bin" "/usr/pkg/bin" "/usr/contrib/bin" "/opt/bin" "/opt/sbin" "/opt/local/bin") "List of directories to search for executables on remote host.\nFor every remote host, this variable will be set buffer local,\nkeeping the list of existing directories on that host.\n\nYou can use `~' in this list, but when searching for a shell which groks\ntilde expansion, all directory names starting with `~' will be ignored.\n\n`Default Directories' represent the list of directories given by\nthe command \"getconf PATH\".  It is recommended to use this\nentry on top of this list, because these are the default\ndirectories for POSIX compatible commands.  On remote hosts which\ndo not offer the getconf command (like cygwin), the value\n\"/bin:/usr/bin\" is used instead of.\n\n`Private Directories' are the settings of the $PATH environment,\nas given in your `~/.profile'." :group :type (repeat (choice (const :tag "Default Directories" tramp-default-remote-path) (const :tag "Private Directories" tramp-own-remote-path) (string :tag "Directory"))) tramp-remote-process-environment `("HISTFILE=$HOME/.tramp_history" "HISTSIZE=1" "LC_ALL=C" ,(format "TERM=%s" tramp-terminal-type) "EMACS=t" ,(format "INSIDE_EMACS='%s,tramp:%s'" emacs-version tramp-version) "CDPATH=" "HISTORY=" "MAIL=" "MAILCHECK=" "MAILPATH=" "PAGER=\"\"" "autocorrect=" "correct=") "List of environment variables to be set on the remote host.\n\nEach element should be a string of the form ENVVARNAME=VALUE.  An\nentry ENVVARNAME= disables the corresponding environment variable,\nwhich might have been set in the init files like ~/.profile.\n\nSpecial handling is applied to the PATH environment, which should\nnot be set here. Instead, it should be set via `tramp-remote-path'." (repeat string) tramp-sh-extra-args '(("/bash\\'" . "-norc -noprofile")) "Alist specifying extra arguments to pass to the remote shell.\nEntries are (REGEXP . ARGS) where REGEXP is a regular expression\nmatching the shell file name and ARGS is a string specifying the\narguments.\n\nThis variable is only used when Tramp needs to start up another shell\nfor tilde expansion.  The extra arguments should typically prevent the\nshell from reading its init file." alist widget-type (alist :key-type string :value-type string) (repeat (cons string string))] 9)
#@473 List of pattern/action pairs.
Whenever a pattern matches, the corresponding action is performed.
Each item looks like (PATTERN ACTION).

The PATTERN should be a symbol, a variable.  The value of this
variable gives the regular expression to search for.  Note that the
regexp must match at the end of the buffer, "\'" is implicitly
appended to it.

The ACTION should also be a symbol, but a function.  When the
corresponding PATTERN matches, the ACTION function is called.
(defconst tramp-actions-before-shell '((tramp-login-prompt-regexp tramp-action-login) (tramp-password-prompt-regexp tramp-action-password) (tramp-wrong-passwd-regexp tramp-action-permission-denied) (shell-prompt-pattern tramp-action-succeed) (tramp-shell-prompt-pattern tramp-action-succeed) (tramp-yesno-prompt-regexp tramp-action-yesno) (tramp-yn-prompt-regexp tramp-action-yn) (tramp-terminal-prompt-regexp tramp-action-terminal) (tramp-process-alive-regexp tramp-action-process-alive)) (#$ . 17621))
#@145 List of pattern/action pairs.
This list is used for copying/renaming with out-of-band methods.

See `tramp-actions-before-shell' for more info.
(defconst tramp-actions-copy-out-of-band '((tramp-password-prompt-regexp tramp-action-password) (tramp-wrong-passwd-regexp tramp-action-permission-denied) (tramp-copy-failed-regexp tramp-action-permission-denied) (tramp-process-alive-regexp tramp-action-out-of-band)) (#$ . 18604))
#@219 Shell function to implement `uudecode' to standard output.
Many systems support `uudecode -o /dev/stdout' or `uudecode -o -'
for this or `uudecode -p', but some systems don't, and for them
we have this shell function.
(defconst tramp-uudecode "(echo begin 600 /tmp/tramp.$$; tail +2) | uudecode\ncat /tmp/tramp.$$\nrm -f /tmp/tramp.$$" (#$ . 19037))
#@230 Perl script to produce output suitable for use with `file-truename'
on the remote file system.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
(defconst tramp-perl-file-truename "%s -e '\nuse File::Spec;\nuse Cwd \"realpath\";\n\nsub recursive {\n    my ($volume, @dirs) = @_;\n    my $real = realpath(File::Spec->catpath(\n                   $volume, File::Spec->catdir(@dirs), \"\"));\n    if ($real) {\n        my ($vol, $dir) = File::Spec->splitpath($real, 1);\n        return ($vol, File::Spec->splitdir($dir));\n    }\n    else {\n        my $last = pop(@dirs);\n        ($volume, @dirs) = recursive($volume, @dirs);\n        push(@dirs, $last);\n        return ($volume, @dirs);\n    }\n}\n\n$result = realpath($ARGV[0]);\nif (!$result) {\n    my ($vol, $dir) = File::Spec->splitpath($ARGV[0], 1);\n    ($vol, @dirs) = recursive($vol, File::Spec->splitdir($dir));\n\n    $result = File::Spec->catpath($vol, File::Spec->catdir(@dirs), \"\");\n}\n\nif ($ARGV[0] =~ /\\/$/) {\n    $result = $result . \"/\";\n}\n\nprint \"\\\"$result\\\"\\n\";\n' \"$1\" 2>/dev/null" (#$ . 19394))
#@244 Perl script to produce output suitable for use with
`file-name-all-completions' on the remote file system.  Escape
sequence %s is replaced with name of Perl binary.  This string is
passed to `format', so percent characters need to be doubled.
(defconst tramp-perl-file-name-all-completions "%s -e 'sub case {\n my $str = shift;\n if ($ARGV[2]) {\n  return lc($str);\n }\n else {\n  return $str;\n }\n}\nopendir(d, $ARGV[0]) || die(\"$ARGV[0]: $!\\nfail\\n\");\n@files = readdir(d); closedir(d);\nforeach $f (@files) {\n if (case(substr($f, 0, length($ARGV[1]))) eq case($ARGV[1])) {\n  if (-d \"$ARGV[0]/$f\") {\n   print \"$f/\\n\";\n  }\n  else {\n   print \"$f\\n\";\n  }\n }\n}\nprint \"ok\\n\"\n' \"$1\" \"$2\" \"$3\" 2>/dev/null" (#$ . 20572))
#@232 Perl script to produce output suitable for use with `file-attributes'
on the remote file system.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
(defconst tramp-perl-file-attributes "%s -e '\n@stat = lstat($ARGV[0]);\nif (!@stat) {\n    print \"nil\\n\";\n    exit 0;\n}\nif (($stat[2] & 0170000) == 0120000)\n{\n    $type = readlink($ARGV[0]);\n    $type = \"\\\"$type\\\"\";\n}\nelsif (($stat[2] & 0170000) == 040000)\n{\n    $type = \"t\";\n}\nelse\n{\n    $type = \"nil\"\n};\n$uid = ($ARGV[1] eq \"integer\") ? $stat[4] : \"\\\"\" . getpwuid($stat[4]) . \"\\\"\";\n$gid = ($ARGV[1] eq \"integer\") ? $stat[5] : \"\\\"\" . getgrgid($stat[5]) . \"\\\"\";\nprintf(\n    \"(%%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u.0 %%u t (%%u . %%u) -1)\\n\",\n    $type,\n    $stat[3],\n    $uid,\n    $gid,\n    $stat[8] >> 16 & 0xffff,\n    $stat[8] & 0xffff,\n    $stat[9] >> 16 & 0xffff,\n    $stat[9] & 0xffff,\n    $stat[10] >> 16 & 0xffff,\n    $stat[10] & 0xffff,\n    $stat[7],\n    $stat[2],\n    $stat[1] >> 16 & 0xffff,\n    $stat[1] & 0xffff\n);' \"$1\" \"$2\" 2>/dev/null" (#$ . 21329))
#@216 Perl script implementing `directory-files-attributes' as Lisp `read'able
output.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
(defconst tramp-perl-directory-files-and-attributes "%s -e '\nchdir($ARGV[0]) or printf(\"\\\"Cannot change to $ARGV[0]: $''!''\\\"\\n\"), exit();\nopendir(DIR,\".\") or printf(\"\\\"Cannot open directory $ARGV[0]: $''!''\\\"\\n\"), exit();\n@list = readdir(DIR);\nclosedir(DIR);\n$n = scalar(@list);\nprintf(\"(\\n\");\nfor($i = 0; $i < $n; $i++)\n{\n    $filename = $list[$i];\n    @stat = lstat($filename);\n    if (($stat[2] & 0170000) == 0120000)\n    {\n        $type = readlink($filename);\n        $type = \"\\\"$type\\\"\";\n    }\n    elsif (($stat[2] & 0170000) == 040000)\n    {\n        $type = \"t\";\n    }\n    else\n    {\n        $type = \"nil\"\n    };\n    $uid = ($ARGV[1] eq \"integer\") ? $stat[4] : \"\\\"\" . getpwuid($stat[4]) . \"\\\"\";\n    $gid = ($ARGV[1] eq \"integer\") ? $stat[5] : \"\\\"\" . getgrgid($stat[5]) . \"\\\"\";\n    printf(\n        \"(\\\"%%s\\\" %%s %%u %%s %%s (%%u %%u) (%%u %%u) (%%u %%u) %%u.0 %%u t (%%u . %%u) (%%u . %%u))\\n\",\n        $filename,\n        $type,\n        $stat[3],\n        $uid,\n        $gid,\n        $stat[8] >> 16 & 0xffff,\n        $stat[8] & 0xffff,\n        $stat[9] >> 16 & 0xffff,\n        $stat[9] & 0xffff,\n        $stat[10] >> 16 & 0xffff,\n        $stat[10] & 0xffff,\n        $stat[7],\n        $stat[2],\n        $stat[1] >> 16 & 0xffff,\n        $stat[1] & 0xffff,\n        $stat[0] >> 16 & 0xffff,\n        $stat[0] & 0xffff);\n}\nprintf(\")\\n\");' \"$1\" \"$2\" 2>/dev/null" (#$ . 22519))
#@270 Perl program to use for encoding a file.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
This implementation requires the MIME::Base64 Perl module to be installed
on the remote host.
(defconst tramp-perl-encode-with-module "%s -MMIME::Base64 -0777 -ne 'print encode_base64($_)' 2>/dev/null" (#$ . 24225))
#@270 Perl program to use for decoding a file.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
This implementation requires the MIME::Base64 Perl module to be installed
on the remote host.
(defconst tramp-perl-decode-with-module "%s -MMIME::Base64 -0777 -ne 'print decode_base64($_)' 2>/dev/null" (#$ . 24623))
#@176 Perl program to use for encoding a file.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
(defconst tramp-perl-encode "%s -e '\n# This script contributed by Juanma Barranquero <lektu@terra.es>.\n# Copyright (C) 2002-2013 Free Software Foundation, Inc.\nuse strict;\n\nmy %%trans = do {\n    my $i = 0;\n    map {(substr(unpack(q(B8), chr $i++), 2, 6), $_)}\n      split //, q(ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/);\n};\nmy $data;\n\n# We read in chunks of 54 bytes, to generate output lines\n# of 72 chars (plus end of line)\nwhile (read STDIN, $data, 54) {\n    my $pad = q();\n\n    # Only for the last chunk, and only if did not fill the last three-byte packet\n    if (eof) {\n        my $mod = length($data) %% 3;\n        $pad = q(=) x (3 - $mod) if $mod;\n    }\n\n    # Not the fastest method, but it is simple: unpack to binary string, split\n    # by groups of 6 bits and convert back from binary to byte; then map into\n    # the translation table\n    print\n      join q(),\n        map($trans{$_},\n            (substr(unpack(q(B*), $data) . q(00000), 0, 432) =~ /....../g)),\n              $pad,\n                qq(\\n);\n}' 2>/dev/null" (#$ . 25021))
#@176 Perl program to use for decoding a file.
Escape sequence %s is replaced with name of Perl binary.
This string is passed to `format', so percent characters need to be doubled.
(defconst tramp-perl-decode "%s -e '\n# This script contributed by Juanma Barranquero <lektu@terra.es>.\n# Copyright (C) 2002-2013 Free Software Foundation, Inc.\nuse strict;\n\nmy %%trans = do {\n    my $i = 0;\n    map {($_, substr(unpack(q(B8), chr $i++), 2, 6))}\n      split //, q(ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/)\n};\n\nmy %%bytes = map {(unpack(q(B8), chr $_), chr $_)} 0 .. 255;\n\nbinmode(\\*STDOUT);\n\n# We are going to accumulate into $pending to accept any line length\n# (we do not check they are <= 76 chars as the RFC says)\nmy $pending = q();\n\nwhile (my $data = <STDIN>) {\n    chomp $data;\n\n    # If we find one or two =, we have reached the end and\n    # any following data is to be discarded\n    my $finished = $data =~ s/(==?).*/$1/;\n    $pending .= $data;\n\n    my $len = length($pending);\n    my $chunk = substr($pending, 0, $len & ~3);\n    $pending = substr($pending, $len & ~3 + 1);\n\n    # Easy method: translate from chars to (pregenerated) six-bit packets, join,\n    # split in 8-bit chunks and convert back to char.\n    print join q(),\n      map $bytes{$_},\n        ((join q(), map {$trans{$_} || q()} split //, $chunk) =~ /......../g);\n\n    last if $finished;\n}' 2>/dev/null" (#$ . 26309))
#@251 Script to check existence of VC related files.
It must be send formatted with two strings; the tests for file
existence, and file readability.  Input shall be read via
here-document, otherwise the command could exceed maximum length
of command line.
(defconst tramp-vc-registered-read-file-names "echo \"(\"\nwhile read file; do\n    if %s \"$file\"; then\n	echo \"(\\\"$file\\\" \\\"file-exists-p\\\" t)\"\n    else\n	echo \"(\\\"$file\\\" \\\"file-exists-p\\\" nil)\"\n    fi\n    if %s \"$file\"; then\n	echo \"(\\\"$file\\\" \\\"file-readable-p\\\" t)\"\n    else\n	echo \"(\\\"$file\\\" \\\"file-readable-p\\\" nil)\"\n    fi\ndone\necho \")\"" (#$ . 27762))
#@118 A list of file types returned from the `stat' system call.
This is used to map a mode number to a permission string.
(defconst tramp-file-mode-type-map '((0 . "-") (1 . "p") (2 . "c") (3 . "m") (4 . "d") (5 . "?") (6 . "b") (7 . "?") (8 . "-") (9 . "n") (10 . "l") (11 . "?") (12 . "s") (13 . "D") (14 . "w")) (#$ . 28433))
#@106 Alist of handler functions.
Operations not mentioned here will be handled by the normal Emacs functions.
(defconst tramp-sh-file-name-handler-alist '((load . tramp-handle-load) (make-symbolic-link . tramp-sh-handle-make-symbolic-link) (file-name-as-directory . tramp-handle-file-name-as-directory) (file-name-directory . tramp-handle-file-name-directory) (file-name-nondirectory . tramp-handle-file-name-nondirectory) (file-truename . tramp-sh-handle-file-truename) (file-exists-p . tramp-sh-handle-file-exists-p) (file-directory-p . tramp-sh-handle-file-directory-p) (file-executable-p . tramp-sh-handle-file-executable-p) (file-readable-p . tramp-sh-handle-file-readable-p) (file-regular-p . tramp-handle-file-regular-p) (file-symlink-p . tramp-handle-file-symlink-p) (file-writable-p . tramp-sh-handle-file-writable-p) (file-ownership-preserved-p . tramp-sh-handle-file-ownership-preserved-p) (file-newer-than-file-p . tramp-sh-handle-file-newer-than-file-p) (file-attributes . tramp-sh-handle-file-attributes) (file-modes . tramp-handle-file-modes) (directory-files . tramp-handle-directory-files) (directory-files-and-attributes . tramp-sh-handle-directory-files-and-attributes) (file-name-all-completions . tramp-sh-handle-file-name-all-completions) (file-name-completion . tramp-handle-file-name-completion) (add-name-to-file . tramp-sh-handle-add-name-to-file) (copy-file . tramp-sh-handle-copy-file) (copy-directory . tramp-sh-handle-copy-directory) (rename-file . tramp-sh-handle-rename-file) (set-file-modes . tramp-sh-handle-set-file-modes) (set-file-times . tramp-sh-handle-set-file-times) (make-directory . tramp-sh-handle-make-directory) (delete-directory . tramp-sh-handle-delete-directory) (delete-file . tramp-sh-handle-delete-file) (directory-file-name . tramp-handle-directory-file-name) (executable-find . tramp-sh-handle-executable-find) (start-file-process . tramp-sh-handle-start-file-process) (process-file . tramp-sh-handle-process-file) (shell-command . tramp-handle-shell-command) (insert-directory . tramp-sh-handle-insert-directory) (expand-file-name . tramp-sh-handle-expand-file-name) (substitute-in-file-name . tramp-handle-substitute-in-file-name) (file-local-copy . tramp-sh-handle-file-local-copy) (file-remote-p . tramp-handle-file-remote-p) (insert-file-contents . tramp-handle-insert-file-contents) (insert-file-contents-literally . tramp-sh-handle-insert-file-contents-literally) (write-region . tramp-sh-handle-write-region) (find-backup-file-name . tramp-handle-find-backup-file-name) (make-auto-save-file-name . tramp-sh-handle-make-auto-save-file-name) (unhandled-file-name-directory . tramp-handle-unhandled-file-name-directory) (dired-compress-file . tramp-sh-handle-dired-compress-file) (dired-recursive-delete-directory . tramp-sh-handle-dired-recursive-delete-directory) (dired-uncache . tramp-handle-dired-uncache) (set-visited-file-modtime . tramp-sh-handle-set-visited-file-modtime) (verify-visited-file-modtime . tramp-sh-handle-verify-visited-file-modtime) (file-selinux-context . tramp-sh-handle-file-selinux-context) (set-file-selinux-context . tramp-sh-handle-set-file-selinux-context) (vc-registered . tramp-sh-handle-vc-registered)) (#$ . 28764))
(add-to-list 'tramp-foreign-file-name-handler-alist '(identity . tramp-sh-file-name-handler) 'append)
#@472 Like `make-symbolic-link' for Tramp files.
If LINKNAME is a non-Tramp file, it is used verbatim as the target of
the symlink.  If LINKNAME is a Tramp file, only the localname component is
used as the target of the symlink.

If LINKNAME is a Tramp file and the localname component is relative, then
it is expanded first, before the localname component is taken.  Note that
this can give surprising results if the user/host for the source and
target of the symlink differ.
(defalias 'tramp-sh-handle-make-symbolic-link #[(filename linkname &optional ok-if-already-exists) "\306!\307	!\310	!\311	!\312	!\313	!*\314	!\315\316
C\"+\211,\204h	\317\320\321-./\3210/\322\323\324\211\325N\326\327.-#E!C-.1/\321\330\331\217\210,\332\326\327.-#C\"\210-\333!\203\3112\203\2022\247\203\305\334\327\335
\"!\204\305	\336\337
C-./\3210/\322\323\324\211\325N\326\327.-#E!C-.1/\321\340\341\217\210,\332\326\327.-#C\"\210-\202\311\342!\210\3433!\203\332\312\306\3443!!!3\345	\316
!\"\210\345	
\"\210\346	\327\347\350+!,\3503!\350
!%\351#.\207" [linkname l l-method l-user l-host l-localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-get-remote-ln tramp-run-real-handler file-name-directory file-error "Making a symbolic link.  ln(1) does not exist on the remote host." nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) signal file-exists-p yes-or-no-p "File %s already exists; make it a link anyway? " file-already-exists "File %s already exists" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) delete-file tramp-tramp-file-p expand-file-name tramp-flush-file-property tramp-send-command-and-check "cd %s && %s -sf %s %s" tramp-shell-quote-argument t l-hop cwd ln args fmt-string vec-or-proc tramp-message-show-message level ok-if-already-exists filename] 11 (#$ . 32079)])
#@39 Like `file-truename' for Tramp files.
(defalias 'tramp-sh-handle-file-truename #[(filename &optional counter prev-dirs) "\306\307!!\310	!\311	!\312	!\313	!\314	!@\315\n\f\316
!\203\265\317	
\320\321$\211A\321=\203\257\322B	\323\324CCDEF\322\325\326\217\210,\327	!\203`\330	\331\332\327	!\333
!#\"B\202\205\334	!\203\213\335	\336\322#\203\213\335	\337\322#\203\213\340	G\341#\210\330	\331\342\333
!\"\"B\202\205\343H\344
\345\"I\346\347
C\"J
J\230K\322L\350M\351N\322OI\203\352MNW\203\352I\211AI@L	\352\353\354\355\356\357\360B!LC#\345#CCDEF\322\361\362\217\210,\363\315\n\f\354\355\356\364\360B!LC#\345#$!@OL\365\230\203	\352\366\322CDEF\322\367\370\217\210,\202\255L\371\230\203;	\352\372\322CDEF\322\373\374\217\210,B\211AB@\210\202\255O;\203\340	\352\375OCCDEF\322\376\377\217\210,MTM\316O!\203d\322B\201RO!\203\321\201SO\"\204\316	\201T\201UOCCDPF\322QF\201V\201W\201XP\211\201YN\201Z\331DC#E!CCDEF\322\201[\201\\\217\210,\201PP\201Z\331DC#C\"\210-
O\356\344O\345\"I\"\211I\202\257LBBB\202\255MNY\203I	\201T\201]NCCDPF\322QF\201V\201W\201XP\211\201YN\201Z\331DC#E!CCDEF\322\201^\201_\217\210,\201PP\201Z\331DC#C\"\210-\360B!\211B\203`\354\355\201`BB\345#\202a\345BK\203\203B\201`\230\204}B\201a\322O\345\230\204\203B\345PB.	\323\201b
BDCDEF\322\201c\201d\217\210,B)A\201e	
\320A$\210A)\2029\322B	\323\324CCDEF\322\201f\201g\217\210,\327	!\203\346\330	\331\332\327	!\333
!#\"B\202\334	!\203\335	\336\322#\203\335	\337\322#\203\340	G\341#\210\330	\331\342\333
!\"\"B\202\343H\344
\345\"I\346\347
C\"J
J\230K\322L\350M\351N\322OI\203\200MNW\203\200I\211AI@L	\352\353\354\355\356\357\360B!LC#\345#CCDEF\322\201h\201i\217\210,\363\315\n\f\354\355\356\364\360B!LC#\345#$!@OL\365\230\203\245	\352\366\322CDEF\322\201j\201k\217\210,\2023L\371\230\203\315	\352\372\322CDEF\322\201l\201m\217\210,B\211AB@\210\2023O;\203v	\352\375OCCDEF\322\201n\201o\217\210,MTM\316O!\203\372\322B\201RO!\203g\201SO\"\204d	\201T\201UOCCDPF\322QF\201V\201W\201XP\211\201YN\201Z\331DC#E!CCDEF\322\201p\201q\217\210,\201PP\201Z\331DC#C\"\210-
O\356\344O\345\"I\"\211I\2025LBBB\2023MNY\203\337	\201T\201]NCCDPF\322QF\201V\201W\201XP\211\201YN\201Z\331DC#E!CCDEF\322\201r\201s\217\210,\201PP\201Z\331DC#C\"\210-\360B!\211B\203\366\354\355\201`BB\345#\202\367\345BK\203B\201`\230\204B\201a\322O\345\230\204B\345PB.	\323\201b
BDCDEF\322\201t\201u\217\210,B)$.\207" [filename v method user host localname tramp-dissect-file-name expand-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-make-tramp-file-name file-name-absolute-p tramp-get-file-property "file-truename" undef nil 4 "Finding true name for `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-get-remote-readlink tramp-send-command-and-read format "echo \"\\\"`%s --canonicalize-missing %s`\\\"\"" tramp-shell-quote-argument tramp-get-remote-perl tramp-get-connection-property "perl-file-spec" "perl-cwd-realpath" tramp-maybe-send-script "tramp_perl_file_truename" "tramp_perl_file_truename %s" 47 tramp-compat-split-string "/" tramp-run-real-handler file-name-as-directory 0 20 5 "Check %s" mapconcat identity append (#1#) reverse (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) file-attributes (#1#) "." "Ignoring step `.'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) ".." "Processing step `..'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "Follow symlink to %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) hop value result args fmt-string level vec-or-proc tramp-perl-file-truename directory-sep-char steps localnamedir is-dir thisstep numchase numchase-limit symlink-target signal tramp-message-show-message tramp-tramp-file-p tramp-equal-remote file-error "Symlink target `%s' on wrong host" 1 "%s" error-message-string error-message apply (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "Maximum number (%d) of symlinks exceeded" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) #1# -1 "True name of `%s' is `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-set-file-property (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error))] 16 (#$ . 35280)])
#@39 Like `file-exists-p' for Tramp files.
(defalias 'tramp-sh-handle-file-exists-p #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\314
!\203_\315	
\316\317$\211\317=\203Y\315	
\320\321$??\206O\315	
\322\321$??\206O\323	\324\325\326	!\327
!#\"\330	
\316$\210)\202\201\315	
\320\321$??\206\201\315	
\322\321$??\206\201\323	\324\325\326	!\327
!#\".\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property "file-exists-p" undef "file-attributes-integer" nil "file-attributes-string" tramp-send-command-and-check format "%s %s" tramp-get-file-exists-command tramp-shell-quote-argument tramp-set-file-property hop value] 8 (#$ . 49623)])
#@41 Like `file-attributes' for Tramp files.
(defalias 'tramp-sh-handle-file-attributes #[(filename &optional id-format) "\204\306	\307\310\n!!\311!\312!\313!\314!\315!\316!\203\317\320\321\"\322$\211\322=\203y\212\323\324!\203P\325#\202`\326!\203_\327#\202`\330\206i\331#\")\332\320\321\"$\210)\202\254\212\323\324!\203\221\325#\202\241\326!\203\240\327#\202\241\330\206\252\331#\").\207" [id-format last-coding-system-used filename v method user integer tramp-dissect-file-name expand-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property format "file-attributes-%s" undef tramp-convert-file-attributes tramp-get-remote-stat tramp-do-file-attributes-with-stat tramp-get-remote-perl tramp-do-file-attributes-with-perl nil tramp-do-file-attributes-with-ls tramp-set-file-property host localname hop value] 7 (#$ . 50451)])
#@70 Implement `file-attributes' for Tramp files using the ls(1) command.
(defalias 'tramp-do-file-attributes-with-ls #[(vec localname &optional id-format) "\306\211\211\211\211\211\211\211\211'()*\307\310+C,-./\306\311\312\217\210,\313*\314\315\316*!\317+!\320*!\317+!\321*!0\322=\203N\323\202O\324\317+!&\"\210r\325*!q\210\326 \327V\205\336eb\210\330\331\332\217'\333\334p!!\334p!\334p!\334p!0\322=\203\230\247\204\216\335\n\247\204\252\335\202\252;\204\241\333!\n;\204\252\333\n!\334p!
\327H\336=)
\327H\337=()\203\312\340\341!\210`\342 {(\206\320\f\n\343\344\345	
\346'\335\257\f.\n\207" [res-symlink-target res-size res-gid res-uid res-numlinks res-filemodes nil 5 "file attributes with ls: %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command format "(%s %s || %s -h %s) && %s %s %s" tramp-get-file-exists-command tramp-shell-quote-argument tramp-get-test-command tramp-get-ls-command integer "-ildn" "-ild" tramp-get-buffer buffer-size 0 err (byte-code "\300p!\207" [read] 2) ((invalid-read-syntax (byte-code "\211A@)\305\232\205A\306\307\211AA)@\"\205A\310\211AA)@\311\312\224O!\310\313\312\211AA)@\"!\211\314\245\n\f\\\f\314_Z+B\207" [err x big small twiddle "Integer constant overflow in reader" string-match "^[0-9]+\\([0-9][0-9][0-9][0-9][0-9]\\)\\'" read 0 1 match-string 65536] 5))) symbol-name read -1 108 100 search-forward "-> " point-at-eol (0 0) (0 0) (0 0) t res-inode dirp symlinkp vec localname args fmt-string level vec-or-proc id-format] 12 (#$ . 51469)])
#@66 Implement `file-attributes' for Tramp files using a Perl script.
(defalias 'tramp-do-file-attributes-with-perl #[(vec localname &optional id-format) "\306\307	C\310\311\312\217\210,\313\314#\210\315\316\317\320	!#\"\207" [vec localname args fmt-string level vec-or-proc 5 "file attributes with perl: %s" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-maybe-send-script "tramp_perl_file_attributes" tramp-send-command-and-read format "tramp_perl_file_attributes %s %s" tramp-shell-quote-argument tramp-perl-file-attributes id-format] 6 (#$ . 53653)])
#@68 Implement `file-attributes' for Tramp files using stat(1) command.
(defalias 'tramp-do-file-attributes-with-stat #[(vec localname &optional id-format) "\306\307	C\310\311\312\217\210,\313\314\315\316!\317	!\320!\317	!\321!\322=\203-\323\202.\324\322=\2039\325\202:\326\317	!&	\"\207" [vec localname args fmt-string level vec-or-proc 5 "file attributes with stat: %s" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command-and-read format "( (%s %s || %s -h %s) && %s -c '((\"%%N\") %%h %s %s %%Xe0 %%Ye0 %%Ze0 %%se0 \"%%A\" t %%ie0 -1)' %s || echo nil)" tramp-get-file-exists-command tramp-shell-quote-argument tramp-get-test-command tramp-get-remote-stat integer "%ue0" "\"%U\"" "%ge0" "\"%G\"" id-format] 13 (#$ . 54844)])
#@50 Like `set-visited-file-modtime' for Tramp files.
(defalias 'tramp-sh-handle-set-visited-file-modtime #[(&optional time-list) "\306 \204\307\310\311 \"\210\203\312\313C\"\207\306 \314\315\n!\316!\317!\320! \321!!\322!\"\323\n!#\324#8\206B\325$\326\327!\203M\327J$\330\232\204^\312\313$C\"\210\202}\331\332\333\334!\335!!#\"\210`\314\210`{#\336!\337#$\210\326\327!\203\206	.\n\314\207" [time-list coding-system-used f v method user buffer-file-name error "Can't set-visited-file-modtime: buffer `%s' not visiting a file" buffer-name tramp-run-real-handler set-visited-file-modtime nil tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-attributes 5 (-1 65535) boundp last-coding-system-used (0 0) tramp-send-command format "%s -ild %s" tramp-get-ls-command tramp-shell-quote-argument tramp-set-file-property "visited-file-modtime-ild" host localname hop attr modtime] 7 (#$ . 56221)])
#@305 Like `verify-visited-file-modtime' for Tramp files.
At the time `verify-visited-file-modtime' calls this function, we
already know that the buffer is visiting a file and that
`visited-file-modtime' does not return 0.  Do not call this
function directly, unless those two cases are already taken care
of.
(defalias 'tramp-sh-handle-verify-visited-file-modtime #[(buf) "rq\210\306 \211\203\307 \310=\204\311\312	\313\314$\204\315\202\252\316	!\317\n!\320\n!\321\n!\322\n!$\323\n!%\315&\324	!'\325'8(\307 )'\203u(\326\232\204u\327\330()A:\204l)@)AD\202n)\"!\331W\202\250'\203\244\332\n\333\334\335\n!\336$!#\"\210r\337\n!q\210`\313\210`{')'\340\n$\341\342$\232\202\250)\343\232.\n*\207" [buf f v method user host buffer-file-name visited-file-modtime 0 tramp-file-name-handler file-remote-p nil connected t tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-attributes 5 (0 0) abs tramp-time-diff 2 tramp-send-command format "%s -ild %s" tramp-get-ls-command tramp-shell-quote-argument tramp-get-buffer tramp-get-file-property "visited-file-modtime-ild" "" (-1 65535) localname hop remote-file-name-inhibit-cache attr modtime mt] 8 (#$ . 57240)])
#@40 Like `set-file-modes' for Tramp files.
(defalias 'tramp-sh-handle-set-file-modes #[(filename mode) "\306!\307	!\310	!\311	!\312	!\313	!\314	
\"\210\315	\316\317\320!\321
!#\322$.\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-flush-file-property tramp-barf-unless-okay format "chmod %s %s" tramp-compat-decimal-to-octal tramp-shell-quote-argument "Error while changing file's mode %s" hop mode] 7 (#$ . 58520)])
#@40 Like `set-file-times' for Tramp files.
(defalias 'tramp-sh-handle-set-file-times #[(filename &optional time) "\306!\203e\307!\310	!\311	!\312	!\313	!\314	!\315	
\"\210\2030\316\232\2035\317 \2027\320 \321	\322\323 \203I\324\202J\325 \203X\326\327\320#\202]\326\327\"\330
!$\".\207\331\332\333\334\211\211\335\326\327\"\330!&!\207" [filename v method user host localname file-remote-p tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-flush-file-property (0 0) current-time t tramp-send-command-and-check format "%s touch -t %s %s" "TZ=UTC; export TZ;" "" format-time-string "%Y%m%d%H%M.%S" tramp-shell-quote-argument zerop tramp-compat-call-process "touch" nil "-t" hop time utc] 10 (#$ . 59088)])
#@191 Set the ownership for FILENAME.
If UID and GID are provided, these values are used; otherwise uid
and gid of the corresponding user is taken.  Both parameters must
be non-negative integers.
(defalias 'tramp-set-file-uid-gid #[(filename &optional uid gid) "\306	!\203r\307	!\310\n!\311\n!\312\n!\313\n!\314\n! \315\316 !\203:\317\n!\203:\320!\"#\202m\321!!\203F!\206J\322\n\323\"\321\"!\203V\"\206Z\324\n\323\"\"!\325\n\326\327!\"\330!$\"*.\202\246\321!!\203~!\206\201\331\323!\321\"!\203\215\"\206\220\332\323!\"!\333\334\335\211\211\326\336!\"#\330	!&*)\207" [last-coding-system-used filename v method user host file-remote-p tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop zerop user-uid tramp-local-host-p tramp-set-file-uid-gid natnump tramp-get-remote-uid integer tramp-get-remote-gid tramp-send-command format "chown %d:%d %s" tramp-shell-quote-argument tramp-get-local-uid tramp-get-local-gid tramp-compat-call-process "chown" nil "%d:%d" localname hop uid gid] 9 (#$ . 59921)])
#@55 Check, whether SELINUX is enabled on the remote host.
(defalias 'tramp-remote-selinux-p #[(vec) "\303\304!\305\306#\211\306=\203/\307\310\311!\312\211%\211\205%\313\314\315\n\"\"\316\230)\317\304!\305	#\210	)\207" [vec value result tramp-get-connection-property tramp-get-connection-process "selinux-p" undef tramp-find-executable "getenforce" tramp-get-remote-path t tramp-send-command-and-read format "echo \\\"`%S`\\\"" "Enforcing" tramp-set-connection-property] 7 (#$ . 61046)])
#@46 Like `file-selinux-context' for Tramp files.
(defalias 'tramp-sh-handle-file-selinux-context #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\"\314
!\203~\315	
\316\317$\211#\317=\203x\320\321$%\322	!\203k\323	\324\325\326	!\327
!#\"\203kr\330	!q\210eb\210\331$\332 \333#\203j\334\335!\334\336!\334\337!\334\340!F%)%*#\341	
\316#$\210#)\202\277\320\321$%\322	!\203\274\323	\324\325\326	!\327
!#\"\203\274r\330	!q\210eb\210\331$\332 \333#\203\273\334\335!\334\336!\334\337!\334\340!F%)%*.\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property "file-selinux-context" undef (nil nil nil nil) "\\([a-z0-9_]+\\):\\([a-z0-9_]+\\):\\([a-z0-9_]+\\):\\([a-z0-9_]+\\)" tramp-remote-selinux-p tramp-send-command-and-check format "%s -d -Z %s" tramp-get-ls-command tramp-shell-quote-argument tramp-get-connection-buffer re-search-forward point-at-eol t match-string 1 2 3 4 tramp-set-file-property hop value regexp context] 8 (#$ . 61545)])
#@50 Like `set-file-selinux-context' for Tramp files.
(defalias 'tramp-sh-handle-set-file-selinux-context #[(filename context) "\306!\307	!\310	!\311	!\312	!\313	!:\203\207\314	!\203\207\315	\316\317@;\2039\316\320@\"\202:\321A@;\203L\316\322A@\"\202M\321\3238;\203_\316\324\3238\"\202`\321\3258;\203r\316\326\3258\"\202s\321\327
!&\"\203\207\330	
\331$\210\202\216\330	
\331\332$\210.\333\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-remote-selinux-p tramp-send-command-and-check format "chcon %s %s %s %s %s" "--user=%s" "" "--role=%s" 2 "--type=%s" 3 "--range=%s" tramp-shell-quote-argument tramp-set-file-property "file-selinux-context" undef nil hop context] 11 (#$ . 62682)])
#@43 Like `file-executable-p' for Tramp files.
(defalias 'tramp-sh-handle-file-executable-p #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\314
!\203H\315	
\316\317$\211\317=\203B\320	\321\"\2068\322\323\"\324	
\316$\210)\202S\320	\321\"\206S\322\323\".\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property "file-executable-p" undef tramp-check-cached-permissions 120 tramp-run-test "-x" tramp-set-file-property hop value] 6 (#$ . 63547)])
#@41 Like `file-readable-p' for Tramp files.
(defalias 'tramp-sh-handle-file-readable-p #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\314
!\203H\315	
\316\317$\211\317=\203B\320	\321\"\2068\322\323\"\324	
\316$\210)\202S\320	\321\"\206S\322\323\".\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property "file-readable-p" undef tramp-check-cached-permissions 114 tramp-run-test "-r" tramp-set-file-property hop value] 6 (#$ . 64185)])
#@48 Like `file-newer-than-file-p' for Tramp files.
(defalias 'tramp-sh-handle-file-newer-than-file-p #[(file1 file2) "\306!\204\307\207\306	!\204\310\207\212\311!\311	!\3128\313\232\2046\312\n8\314\232\2046\315\316\312\n8\3128\"V\202\312\317	\"\204\245\320\321!\203H\202I	!\322\f!\323\f!$\324\f!%\325\f!&\326\f!'\f\327\330	D()!*\307+*\331\332\333!\211\334N\335\336)(#E!C(),*\307\337\340\217\210,\341!\335\336)(#C\"\210.\320!\322\f!\323\f!$\324\f!%\325\f!&\326\f!'\342\343\f!	#.+\207" [file1 file2 fa2 fa1 v method file-exists-p nil t file-attributes 5 (0 0) (0 0) 0 tramp-time-diff tramp-equal-remote tramp-dissect-file-name tramp-tramp-file-p tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-error "Files %s and %s must have same method, user, host" 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) signal tramp-run-test2 tramp-get-test-nt-command user host localname hop args fmt-string vec-or-proc tramp-message-show-message level] 10 (#$ . 64817)])
#@42 Like `file-directory-p' for Tramp files.
(defalias 'tramp-sh-handle-file-directory-p #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\314
G!\206L\315
!\203H\316	
\317\320$\211\320=\203B\321\322\"\323	
\317$\210)\202L\321\322\".\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop zerop file-name-absolute-p tramp-get-file-property "file-directory-p" undef tramp-run-test "-d" tramp-set-file-property hop value] 6 (#$ . 66558)])
#@41 Like `file-writable-p' for Tramp files.
(defalias 'tramp-sh-handle-file-writable-p #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\314
!\203`\315	
\316\317$\211\317=\203Z\320!\203A\321	\322\"\206P\323\324\"\202P\323\325\326!\"\205P\323\324\326!\"\327	
\316$\210)\202\203\320!\203t\321	\322\"\206\203\323\324\"\202\203\323\325\326!\"\205\203\323\324\326!\".\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property "file-writable-p" undef file-exists-p tramp-check-cached-permissions 119 tramp-run-test "-w" "-d" file-name-directory tramp-set-file-property hop value] 6 (#$ . 67143)])
#@52 Like `file-ownership-preserved-p' for Tramp files.
(defalias 'tramp-sh-handle-file-ownership-preserved-p #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!\314
!\203Q\315	
\316\317$\211\317=\203K\320!\211?\206@\3218\322	\323\"U)\324	
\316$\210)\202e\320!\211?\206d\3218\322	\323\"U).\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property "file-ownership-preserved-p" undef file-attributes 2 tramp-get-remote-uid integer tramp-set-file-property hop value attributes] 6 (#$ . 67938)])
#@56 Like `directory-files-and-attributes' for Tramp files.
(defalias 'tramp-sh-handle-directory-files-and-attributes #[(directory &optional full match nosort id-format) "\204\306\307	!\205\351\310	!\311\312	!\313\n!\314\n!\315\n!\316\n!!\317\n!\"\320!!\203x\321\n!\322\323\"\324$\211#\324=\203r\212\325\326\327\n!\203V\330\n!#\202b\331\n!\205b\332\n!#\")#\333\n!\322\323\"#$\210#)\202\230\212\325\334\327\n!\203\212\330\n!#\202\226\331\n!\205\226\332\n!#\").!$\335\211%&$\203\331$\211A$@&'\203\300\336'&@\"\203\243(\203\317&\310&@	\"\240\210&%B%\202\243)\203\343%\202\350\337%\340\"+\207" [id-format directory v method user host integer file-directory-p expand-file-name copy-tree tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-name-absolute-p tramp-get-file-property format "directory-files-and-attributes-%s" undef mapcar #[#1=(x) "@\302	A\"B\207" [x v tramp-convert-file-attributes] 4] tramp-get-remote-stat tramp-do-directory-files-and-attributes-with-stat tramp-get-remote-perl tramp-do-directory-files-and-attributes-with-perl tramp-set-file-property #[#1# "@\302	A\"B\207" [x v tramp-convert-file-attributes] 4] nil string-match sort #[(x y) "@	@\231\207" [x y] 2] localname hop value temp result item match full nosort] 8 (#$ . 68628)])
#@81 Implement `directory-files-and-attributes' for Tramp files using a Perl script.
(defalias 'tramp-do-directory-files-and-attributes-with-perl #[(vec localname &optional id-format) "\306\307	C\310\311\312\217\210,\313\314#\210\315\316\317\320	!#\"\211;\203\\\321\310\310
\322\323\324\211\325N\326\316\n#E!C\310\327\330\217\210,\331\326\316\n#C\"\210-)\207" [vec localname args fmt-string level vec-or-proc 5 "directory-files-and-attributes with perl: %s" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-maybe-send-script "tramp_perl_directory_files_and_attributes" tramp-send-command-and-read format "tramp_perl_directory_files_and_attributes %s %s" tramp-shell-quote-argument file-error 1 "%s" error-message-string error-message apply (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) signal tramp-perl-directory-files-and-attributes id-format object tramp-message-show-message] 11 (#$ . 70038)])
#@83 Implement `directory-files-and-attributes' for Tramp files using stat(1) command.
(defalias 'tramp-do-directory-files-and-attributes-with-stat #[(vec localname &optional id-format) "\306\307	C\310\311\312\217\210,\313\314\315\316	!\317!\320!\321=\203'\322\202(\323\321=\2033\324\2024\325&\"\207" [vec localname args fmt-string level vec-or-proc 5 "directory-files-and-attributes with stat: %s" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command-and-read format "cd %s; echo \"(\"; (%s -a | sed -e s/\\$/\\\"/g -e s/^/\\\"/g | xargs %s -c '(\"%%n\" (\"%%N\") %%h %s %s %%Xe0 %%Ye0 %%Ze0 %%se0 \"%%A\" t %%ie0 -1)' 2>/dev/null); echo \")\"" tramp-shell-quote-argument tramp-get-ls-command tramp-get-remote-stat integer "%ue0" "\"%U\"" "%ge0" "\"%G\"" id-format] 10 (#$ . 72203)])
#@51 Like `file-name-all-completions' for Tramp files.
(defalias 'tramp-sh-handle-file-name-all-completions #[(filename directory) "\306 \307\216\310\311	\"*?\205|\312\313\n!!\314!\315!\316!@\317!A\320!B\321	\322\323C\2066DC\324\325\322\326\327	G\330\331#\"\"@)\206x\332E\333\334!\203|\335F\336#\210\337\340\341A!\341	!\342\343!\203n\343\202o\344J\203w\330\202x\345$\202\235\337\346\341A!\347!\350	G!\203\220\351\202\225\341	!\352P\347!\353!&\"\210r\354!q\210db\210\331y\210\355\356!\203\372\331y\210\357\360`\361 {CGH7I\332JI\330\362\3637\211\364N\324\337HG#E!CGHKI\332\365\366\217\210,\3677\324\337HG#C\"\210-\202E\355\370!\204E\357\371\341A!\372 DGH7I\332JI\330\362\3637\211\364N\324\337HG#E!CGHKI\332\373\374\217\210,\3677\324\337HG#C\"\210-\350\331y!\203X`\361 {EBE\202E)\375A\376\377$\210\201L\201ME\"\210\375A	P\201NE$)\"\".\207" [save-match-data-internal filename directory v method user match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) string-match "/" tramp-dissect-file-name expand-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop all-completions mapcar list apply append #[(x) "\305	\n\306OP\307\310$\211\205\fC)\207" [v localname filename x cache-hit tramp-get-file-property 0 "file-name-all-completions" nil] 7] tramp-compat-number-sequence 1 -1 nil tramp-send-command tramp-get-remote-perl tramp-maybe-send-script "tramp_perl_file_name_all_completions" format "tramp_perl_file_name_all_completions %s %s %d" tramp-shell-quote-argument boundp read-file-name-completion-ignore-case completion-ignore-case 0 "(\\cd %s 2>&1 && (%s %s -a 2>/dev/null || %s -a 2>/dev/null) | while read f; do if %s -d \"$f\" 2>/dev/null; then \\echo \"$f/\"; else \\echo \"$f\"; fi; done && \\echo ok) || \\echo fail" tramp-get-ls-command zerop "." "* -d" tramp-get-test-command tramp-get-buffer looking-at "^fail$" file-error "tramp-sh-handle-file-name-all-completions: %s" point-at-eol "%s" error-message-string error-message (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) signal "^ok$" "tramp-sh-handle-file-name-all-completions: internal error accessing `%s': `%s'" buffer-string (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-set-file-property "file-exists-p" t host localname hop remote-file-name-inhibit-cache tramp-completion-reread-directory-timeout result tramp-perl-file-name-all-completions args fmt-string vec-or-proc tramp-message-show-message level mapc #[(entry) "\303	\nP\304\305$\207" [v localname entry tramp-set-file-property "file-exists-p" t] 5] "file-name-all-completions"] 14 (#$ . 73637)])
#@42 Like `add-name-to-file' for Tramp files.
(defalias 'tramp-sh-handle-add-name-to-file #[(filename newname &optional ok-if-already-exists) "\306	\"\204l\307\310!\203\202	!\311\n!\312\n!\313\n!\314\n!)\315\n!*\n\316\317\320C+,-\321.-\322\323\324\211\325N\326\327,+#E!C+,/-\321\330\331\217\210,\332\326\327,+#C\"\210.\307!0\3110!1\3120!2\3130!3\3140!4\3150!5\307	!6\3116!7\3126!8\3136!9\3146!:\3156!;0\205\273\3330!<=\204\334	!\203=\247\204\335\327\336	\"!\2036\316\337	C+,-\321.-\322\323\324\211\325N\326\327,+#E!C+,/-\321\340\341\217\210,\332\326\327,+#C\"\210-\3426\343:!\"\210\3426:\"\210\3440\327\345<\3464!\346:!$\347\350 $.
\207" [filename newname v method user host tramp-equal-remote tramp-dissect-file-name tramp-tramp-file-p tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-error "add-name-to-file: %s" "only implemented for same method, same user, same host" nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) signal tramp-get-remote-ln file-exists-p y-or-n-p "File %s already exists; make it a new name anyway? " "add-name-to-file: file %s already exists" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-flush-file-property file-name-directory tramp-barf-unless-okay "%s %s %s" tramp-shell-quote-argument "error with add-name-to-file, see buffer `%s' for details" buffer-name localname hop args fmt-string vec-or-proc tramp-message-show-message level v1 v1-method v1-user v1-host v1-localname v1-hop v2 v2-method v2-user v2-host v2-localname v2-hop ln ok-if-already-exists] 10 (#$ . 77588)])
#@35 Like `copy-file' for Tramp files.
(defalias 'tramp-sh-handle-copy-file #[(filename newname &optional ok-if-already-exists keep-date preserve-uid-gid preserve-selinux-context) "\306!\306	!\307!\204\307	!\203\310\311	\n\f
&\207
\203/\312\313	\n\f
\257\"\207\f\203>\312\313	\n\f\257\"\207\312\313	\nF\"\207" [filename newname ok-if-already-exists keep-date preserve-uid-gid preserve-selinux-context expand-file-name tramp-tramp-file-p tramp-do-copy-or-rename-file copy tramp-run-real-handler copy-file] 8 (#$ . 80542)])
#@40 Like `copy-directory' for Tramp files.
(defalias 'tramp-sh-handle-copy-directory #[(dirname newname &optional keep-date parents copy-contents) "\306!\306	!\307\203\202	!\310\f!\311\f!\312\f!\313\f!\314\f!\315
\316\"\203\207\203I\n\203I\310\307!!\310\307	!!\230\203\207\317\320!!\317\320	!!\321	!\203l\322!\322	!\230\204l\320\322!	\"\321\323	!!\204|\324\323	!\"\210\325\326	$\210\202\222\327\330	F\"\210\n\205\301\307	!\310\f!\311\f!\312\f!\313\f!\314\f!\331\f\323!\"\210\331\f\"..\207" [dirname newname t2 t1 v method tramp-tramp-file-p tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-get-method-parameter tramp-copy-recursive directory-file-name expand-file-name file-directory-p file-name-nondirectory file-name-directory make-directory tramp-do-copy-or-rename-file-out-of-band copy tramp-run-real-handler copy-directory tramp-flush-file-property user host localname hop parents keep-date] 6 (#$ . 81086)])
#@37 Like `rename-file' for Tramp files.
(defalias 'tramp-sh-handle-rename-file #[(filename newname &optional ok-if-already-exists) "\303!\303	!\304!\204\304	!\203\305\306	\n\307\211&\207\310\311	\nE\"\207" [filename newname ok-if-already-exists expand-file-name tramp-tramp-file-p tramp-do-copy-or-rename-file rename t tramp-run-real-handler rename-file] 7 (#$ . 82156)])
#@736 Copy or rename a remote file.
OP must be `copy' or `rename' and indicates the operation to perform.
FILENAME specifies the file to copy or rename, NEWNAME is the name of
the new file (for copy) or the new name of the file (for rename).
OK-IF-ALREADY-EXISTS means don't barf if NEWNAME exists already.
KEEP-DATE means to make sure that NEWNAME has the same timestamp
as FILENAME.  PRESERVE-UID-GID, when non-nil, instructs to keep
the uid and gid if both files are on the same host.
PRESERVE-SELINUX-CONTEXT activates selinux commands.

This function is invoked by `tramp-sh-handle-copy-file' and
`tramp-sh-handle-rename-file'.  It is an error if OP is neither
of `copy' and `rename'.  FILENAME and NEWNAME must be absolute
file names.
(defalias 'tramp-do-copy-or-rename-file #[(op filename newname &optional ok-if-already-exists keep-date preserve-uid-gid preserve-selinux-context) "\306>\204\307\310\"\210\311	!\311\n!\312\313\314	!!8\205!\315\316	C\"\317\21189:;\320;\2037	\2028\n!<\321<!=\322<!>\323<!?\324<!@\325<!AB\204\245\326\n!\203\245<\327\330\nCCD E\317FE\331\332\333 \211\334N\315\335DC#E!CCDGE\317\336\337\217\210,\340 \315\335DC#C\"\210-\317\211<\341\342\335\343\344=\203\271\345\202\272\346	\n$CCDGE\317\347\350\217\210,H\203\344F\203\344\341I\351^X\203\344\317\352\353\217\210\354\216H\205\355\f?H;\203\200:\203\200\320	!J\321J!K\322J!L\323J!M\324J!N\325J!O\320\n!P\321P!Q\322P!R\323P!S\324P!T\325P!U\355	\n\"\203V\356	\nBVW&\210\202{\357J9\"\203s\357P9\"\203s\360	\nV$\210\202{\361	\nV$\210.\f\202\304;\204\212:\203\300\362<!\203\241\356	\nBVW&\210\202\304\357<9\"\203\265\360	\nV$\210\202\304\361	\nV$\210\202\304\307\363!\2108\203\321\315\364\n8D\"\210;\203\365=\203\320	!J\321J!K\322J!L\323J!M\324J!N\325J!O\366J\367@!\"\210\366J@\"\210.:\205J\320\n!P\321P!Q\322P!R\323P!S\324P!T\325P!U\366P\367@!\"\210\366P@\"..\207" [op filename newname preserve-selinux-context tm pr (copy rename) error "Unknown operation `%s', must be `copy' or `rename'" tramp-tramp-file-p 7 file-attributes file-truename apply file-selinux-context nil tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-exists-p file-already-exists "File %s already exists" 1 "%s" error-message-string error-message format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) signal 0 "%s..." #5="%s %s to %s" copy #6="Copying" #7="Renaming" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) 3 (byte-code "\305\306!\204\f\307\306!\205\306\310\311\312=\203\313\202\314	\n$!\211\205)\315\316\317\320$\305\207" [op filename newname pr tm subrp make-progress-reporter functionp format #5# copy #6# #7# run-at-time 3 0.1 tramp-progress-reporter-update] 7) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\315=\203#\316\202$\317\f$C\320\321\322\217\210,\320\207" [tm v op filename newname args subrp cancel-timer functionp 0 "%s...done" format #5# copy #6# #7# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) fmt-string level vec-or-proc] 8)) tramp-equal-remote tramp-do-copy-or-rename-file-directly tramp-method-out-of-band-p tramp-do-copy-or-rename-file-out-of-band tramp-do-copy-or-rename-file-via-buffer tramp-local-host-p "Tramp implementation says this cannot happen" set-file-selinux-context rename tramp-flush-file-property file-name-directory context length t2 t1 v method user host localname hop ok-if-already-exists args fmt-string vec-or-proc tramp-message-show-message level tramp-message-show-progress-reporter-message tramp-verbose v1 v1-method v1-user v1-host v1-localname v1-hop v2 v2-method v2-user v2-host v2-localname v2-hop keep-date preserve-uid-gid] 10 (#$ . 82542)])
#@248 Use an Emacs buffer to copy or rename a file.
First arg OP is either `copy' or `rename' and indicates the operation.
FILENAME is the source file, NEWNAME the target file.
KEEP-DATE is non-nil if NEWNAME should have the same timestamp as FILENAME.
(defalias 'tramp-do-copy-or-rename-file-via-buffer #[(op filename newname keep-date) "\306\307!rq\210\310\216\311\312!\210\313\314\315!\210*\313\314\316ed
#\210-\2030\317
\320\321!8\"\210\322
\323!\"\210\324=?\205B\325!\207" [#1=#:temp-buffer jka-compr-inhibit coding-system-for-read filename coding-system-for-write newname generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) set-buffer-multibyte nil binary t insert-file-contents-literally write-region set-file-times 5 file-attributes set-file-modes tramp-default-file-modes copy delete-file keep-date op] 5 (#$ . 88247)])
#@460 Invokes `cp' or `mv' on the remote system.
OP must be one of `copy' or `rename', indicating `cp' or `mv',
respectively.  FILENAME specifies the file to copy or rename,
NEWNAME is the name of the new file (for copy) or the new name of
the file (for rename).  Both files must reside on the same host.
KEEP-DATE means to make sure that NEWNAME has the same timestamp
as FILENAME.  PRESERVE-UID-GID, when non-nil, instructs to keep
the uid and gid from FILENAME.
(defalias 'tramp-do-copy-or-rename-file-directly #[(op filename newname ok-if-already-exists keep-date preserve-uid-gid) "\306!\306	!\307\310!8\311!\312
\203\202	!@\313@!A\314@!B\315@!C\316@!#\317@!DE\320=\203MF\203M\321\202\244E\320=\203X\322\202\244E\323=\203c\324\202\244@\325\326ECGH I\327JI\330\331\332 \211\333N\334\335HG#E!CGHKI\327\336\337\217\210,\340 \334\335HG#C\"-L
\203\262\341\342\343#\202\263M\f\203\301\341\342	\343#\202\302	N\342
\203\315\202\316	!O\327P
\2038\f\2038\344@\335\345L\346M!\346N!$\"Pr\347@!q\210eb\210Q\203\350R\327\351#\2044P\2044\327@\325\352\353 CGH IS\354 T\355\216\356\216\334\357I HG%\210.)\202\200
\204@\f\203\200\327U\360M!\205^\361\362N!!\205^\363N!\206^\361N!)\203\207E\320=\203y\364MNVQF%\210\202\200\365\366MNVE\"\210\202\200\360OMP!\203\327\361\362ONP!!\203\327\363ONP!\204\261\361ONP!\203\327\367EOMPONPVQ\351&\210\370ONP\371\372!\373\372!#\210\202\200M\327W\327U\374\375J\327U\376\377!\203\371\201\\\377\201]N@!\206\252\201^\201_!\203\201`\201_!\204\201a\201_!\205\252\201_ \202\252\201b\201c!\211X\205/\363X!)\203A\201d\201b\201c!!\202\252\201b\201e!\211X\205R\363X!)\203d\201d\201b\201e!!\202\252\201b\201f!\211X\205u\363X!)\203\207\201d\201b\201f!!\202\252\201g\201h!\203\233\201d\201h!\202\252\201i\201j!\210\201d\201k!)\"O\201l\351\"Y\327\211Z\201m\201n\217\210Z.[\201o\216
\203\201p@\335\345L\346M!\346[!$\352\347@!$\210\201qO[P\201r\201s!\"\210\370O[P\371\372!\373\372!#\210\202P\f\203PE\320=\203%\364M[\351QF%\210\202/\365\366M[\351E\"\210\201q[\201r\201s!\"\210\370[\201t@\372\"\201u@\372\"#\210\f\203p\201p@\335\201v\346[!\346N!#\352\347@!$\210\202
\203\365\366[NVE\"\210*-\327\201w\201x\217.\n\207" [filename newname file-modes file-times t2 t1 tramp-tramp-file-p 5 file-attributes tramp-default-file-modes tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop copy "cp -f -p" "cp -f" rename "mv -f" file-error "Unknown operation `%s', must be `copy' or `rename'" nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2="" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) signal tramp-file-name-handler file-remote-p localname tramp-send-command-and-check "%s %s %s" tramp-shell-quote-argument tramp-get-buffer re-search-forward t "Copying directly failed, see buffer `%s' for details." buffer-name current-window-configuration ((set-window-configuration #1=#:wconfig)) ((byte-code "\2036	\2036\305\n!\2046\306 \2046\307\310\311\f!\203 \f\206/\312!\203,\313!\206/\314!!\210\315\316!\210)\305\207" [vec-or-proc tramp-message-show-message tramp-verbose enable-recursive-minibuffers buffer zerop tramp-completion-mode-p t pop-to-buffer bufferp processp process-buffer tramp-get-connection-buffer sit-for 30] 3)) tramp-error file-readable-p file-writable-p file-name-directory file-directory-p tramp-compat-copy-file tramp-run-real-handler rename-file tramp-do-copy-or-rename-file-directly tramp-set-file-uid-gid tramp-get-local-uid integer tramp-get-local-gid expand-file-name tramp-temp-name-prefix boundp temporary-file-directory v method user host hop op preserve-uid-gid args fmt-string vec-or-proc tramp-message-show-message level cmd localname1 localname2 prefix cmd-result keep-date tramp-operation-not-permitted-regexp buffer #1# file-name-handler-alist ok-if-already-exists dir-flag d extension result tmpfile eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-name-as-directory "TMP" "TMPDIR" file-exists-p "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp" file-name-extension (byte-code "\304\305!\204\f\306\305!\205\305	\n#\304\207" [prefix dir-flag extension result subrp make-temp-file functionp] 4) ((error (byte-code "\300\301\302\217\204\300\207" [nil (byte-code "\304!	P\203\305\n!\210\202\306\307\310\n\310\311%\210\310\207" [prefix extension result dir-flag make-temp-name make-directory write-region #2# nil silent] 6) ((file-already-exists t))] 3))) ((byte-code "\300\301\302\217\207" [nil (delete-file tmpfile) ((error))] 3)) tramp-barf-unless-okay set-file-modes tramp-compat-octal-to-decimal "0777" tramp-get-remote-uid tramp-get-remote-gid "cp -f -p %s %s" (byte-code "\205
\304	\n\"\210\305	\"\207" [keep-date newname file-times file-modes set-file-times set-file-modes] 3) ((error))] 10 (#$ . 89151)])
#@76 Invoke rcp program to copy.
The method used must be an out-of-band method.
(defalias 'tramp-do-copy-or-rename-file-out-of-band #[(op filename newname keep-date) "\306!\306\n!\307	\203\202\n!\310\211@\310\211AB\310\211CD\310\211EF\307	\2034\2025\n!G\311G!H\312G!I\313G!J\314G!K\315G!L	\2036\2036\316!MKMM\310N\317\320J\310N\321\322!\203\202\323\322\324N@!\206\367\325\326!\203\231\327\326!\204\224\330\326!\205\367\326 \202\367\331\332!\211O\205\246\316O!)\203\262\333\331\332!!\202\367\331\334!\211O\205\277\316O!)\203\313\333\331\334!!\202\367\331\335!\211O\205\330\316O!)\203\344\333\331\335!!\202\367\336\337!\203\360\333\337!\202\367\340\341!\210\333\342!)\"P\343\344\"Q\310\211R\345\346\217\210R.SM\203\317\347\n!S\"S\350\216\351TSU$\210\351\352S\nU$\210+\202\311G!V\312G!\206I\353G\354\310#W\355G!X\356G!@\211G\357KI\210	\203i\360G!\202jE\316!\203\200\347!\347\n!\230\203\200\361\202\201\362\203\214\360G!\202\215\n!F\313G!J\363C\364YJ\"\203\264\365\366\367J\"!C\365\366\370J\"!J\312G!\206\301\353G\354\310#IJ\206\311\363JI\206\321\363IC\206\331\363C\371\372J\373I\374C\375\353\376G!\377\363#\201hU\203\374\201i\202\375\363&\nD\201jH\201k\"\201jH\201l\"B\201m\201i\201jH\201n\"\310Z\211[\203_[@Z\201o@\201p\201qZ\"\\\363\\\235\203P\201r\202R\\)\"@[A\211[\204.\310Z@*\"@\201s\310\201p\201t\201jH\201u\"\"\"A\310N\321\322!\203\221\323\322\324N@!\206\325\326!\203\250\327\326!\204\243\330\326!\205\326 \202\331\332!\211O\205\265\316O!)\203\301\333\331\332!!\202\331\334!\211O\205\316\316O!)\203\332\333\331\334!!\202\331\335!\211O\205\347\316O!)\203\363\333\331\335!!\202\336\337!\203\377\333\337!\202\340\341!\210\333\342!)]\201v
!)\204kG\201w\201x
C^_`a\310ba\370\201y\201z`\211\201{N\201|\201}_^#E!C^_ca\310\201~\201\217\210,\201``\201|\201}_^#C\"\210-\201\200\201\201!drdq\210\201\202\216\201\203\216\361	\203\212\202\213\n!\201\204e!e]\201\205G\201\206\201\207p!#\210\201\205G\201\210p#\210A\203\360\f\201\211\201\212A@A\211ZA@)D^_ca\310\201\213\201\214\217\210,\201\215A\211AA@A\211AA@\"\210\202\260\310N\321\322!\203\323\322\324N@!\206w\325\326!\203\327\326!\204\330\326!\205w\326 \202w\331\332!\211O\205&\316O!)\2032\333\331\332!!\202w\331\334!\211O\205?\316O!)\203K\333\331\334!!\202w\331\335!\211O\205X\316O!)\203d\333\331\335!!\202w\336\337!\203p\333\337!\202w\340\341!\210\333\342!)]\201|\201\216\201\217G!\201\220G!
\201o@EFD\"%)f\f\201\221\201y\201\222\362\201\223f!\201i#C^_ca\310\201\224\201\225\217\210,\201\226f\310\"\210\201\227fG\310g$\210.U\203\363B\204\363\201\230\n\201\211\201\231!8\"\210U\203\375B\204\310\201\232\201\233\217\210T\201\234=?\205(\201\235!\203 \201\236!\202(\201\237\201\240\".\207" [filename t1 newname t2 orig-vec copy-program tramp-tramp-file-p tramp-dissect-file-name nil tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-directory-p expand-file-name tramp-temp-name-prefix boundp temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-name-as-directory "TMP" "TMPDIR" file-exists-p "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp" file-name-extension t (byte-code "\304\305!\204\f\306\305!\205\305	\n#\304\207" [prefix dir-flag extension result subrp make-temp-file functionp] 4) ((error (byte-code "\300\301\302\217\204\300\207" [nil (byte-code "\304!	P\203\305\n!\210\202\306\307\310\n\310\311%\210\310\207" [prefix extension result dir-flag make-temp-name make-directory write-region #1="" nil silent] 6) ((file-already-exists t))] 3))) file-name-nondirectory ((byte-code "\300\301\302\217\207" [nil (byte-code "\203\302\303\304	\"\305\"\210\202\306	!\210\302\207" [dir-flag tmpfile tramp-compat-delete-directory expand-file-name ".." recursive delete-file] 4) ((error))] 3)) tramp-do-copy-or-rename-file-out-of-band rename tramp-get-connection-property "login-as" tramp-file-name-real-host tramp-compute-multi-hops 3 tramp-make-copy-program-file-name file-name-directory identity #1# string-match string-to-number match-string 2 1 format-spec-make 104 117 112 116 tramp-get-connection-process "temp-file" copy-args copy-env copy-keep-date port spec source target v method user host localname hop dir-flag file-name-handler-alist d prefix extension result tmpfile op keep-date tramp-current-method tramp-current-user tramp-current-host tramp-host-with-port-regexp x --dolist-tail-- y default-directory args fmt-string signal vec-or-proc tramp-message-show-message level #2=#:temp-buffer process-environment p tramp-actions-copy-out-of-band 107 " " tramp-get-method-parameter tramp-copy-program tramp-copy-keep-date delete tramp-copy-args append mapcar #[(z) "\302	\"\207" [z spec format-spec] 3] (" ") delq #[(x) "\301\302\"\303\235?\205\304\305\306#\207" [x mapcar #[(y) "\302	\"\207" [y spec format-spec] 3] #1# mapconcat identity " "] 4] tramp-copy-env executable-find file-error "Cannot find copy program: %s" "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3="Warning: " #4="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5="(%d) # " vec-or-proc default-directory] 6) ((error)) generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#2# buffer-name kill-buffer] 2)) ((byte-code "\306\307\310 C\311\312\313\217\210,\314
\315\311#\210\314
\316\311#\207" [orig-vec args fmt-string level vec-or-proc v 6 "\n%s" buffer-string nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) tramp-set-connection-property "process-name" "process-buffer"] 4)) copy-sequence tramp-set-connection-property "process-name" buffer-name "process-buffer" 5 "%s=\"%s\"" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) setenv start-process tramp-get-connection-name tramp-get-connection-buffer 6 mapconcat process-command (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) tramp-compat-set-process-query-on-exit-flag tramp-process-actions set-file-times file-attributes (byte-code "\302\303	!\"\207" [newname filename set-file-modes tramp-default-file-modes] 4) ((error)) copy file-regular-p delete-file tramp-compat-delete-directory recursive] 13 (#$ . 94876)])
#@40 Like `make-directory' for Tramp files.
(defalias 'tramp-sh-handle-make-directory #[(dir &optional parents) "\306!\307!\310	!\311	!\312	!\313	!\314	!\315	\316
!\"\210\212\317	\320\321\2032\322\2023\323\324
!#\325$.\207" [dir v method user host localname expand-file-name tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-flush-directory-property file-name-directory tramp-barf-unless-okay format "%s %s" "mkdir -p" "mkdir" tramp-shell-quote-argument "Couldn't make directory %s" hop parents] 7 (#$ . 103711)])
#@42 Like `delete-directory' for Tramp files.
(defalias 'tramp-sh-handle-delete-directory #[(directory &optional recursive) "\306!\307!\310	!\311	!\312	!\313	!\314	!\315	\316
!\"\210\317	
\"\210\320	\321\322\2036\323\2027\324\325
!#\326$.\207" [directory v method user host localname expand-file-name tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-flush-file-property file-name-directory tramp-flush-directory-property tramp-barf-unless-okay format "%s %s" "rm -rf" "rmdir" tramp-shell-quote-argument "Couldn't delete %s" hop recursive] 7 (#$ . 104333)])
#@37 Like `delete-file' for Tramp files.
(defalias 'tramp-sh-handle-delete-file #[(filename &optional trash) "\306!\307!\310	!\311	!\312	!\313	!\314	!\315	\316
!\"\210\315	
\"\210\317	\320\321\2038\322	!\2069\323\324
!#\325$.\207" [filename v method user host localname expand-file-name tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-flush-file-property file-name-directory tramp-barf-unless-okay format "%s %s" tramp-get-remote-trash "rm -f" tramp-shell-quote-argument "Couldn't delete %s" hop trash] 7 (#$ . 104999)])
#@106 Recursively delete the directory given.
This is like `dired-recursive-delete-directory' for Tramp files.
(defalias 'tramp-sh-handle-dired-recursive-delete-directory #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!&\314!\204_	\315\316C'()\317*)\320\321\322\211\323N\324\325('#E!C'(+)\317\326\327\217\210,\330\324\325('#C\"\210-\331	\325\332\333
!\"\317\334$\210\335\336	!\337\"\210\340	\341
!\"\210\342	
\"\210\314!\205\303	\315\343C'()\317*)\320\321\322\211\323N\324\325('#E!C'(+)\317\344\345\217\210,\330\324\325('#C\"-.\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-exists-p file-error "No such directory: %s" nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) signal tramp-send-command "rm -rf %s" tramp-shell-quote-argument t tramp-wait-for-output tramp-get-connection-process 120 tramp-flush-file-property file-name-directory tramp-flush-directory-property "Failed to recursively delete %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) hop args fmt-string vec-or-proc tramp-message-show-message level] 10 (#$ . 105631)])
#@45 Like `dired-compress-file' for Tramp files.
(defalias 'tramp-sh-handle-dired-compress-file #[(file &rest ok-flag) "\306!\307	!\310	!\311	!\312	!\313	!,\314	
\"\210\212\315J\316-..\203I\316/\317.@@
\"\203@.@-\316..A.)\202&\320!\203S\316\202I-\203\320\321-8\203\320\316\21101	\322\323\324\325\"C2345\316\326\327\217\210,6\203\2237\203\223\3228\330^X\203\223\316\331\332\217\210\333\2166\205\2350?6\334	\321-8\335\336
!Q\"\205\314\337\340!\204\272\341\340!\203\276\340!\210\317-@\"\210\322\211\224O\260,\202I\316\21101	\322\323\324\342\"C2345\316\343\344\217\210,6\2037\203\3228\330^X\203\316\345\346\217\210\347\2166\2050?6\334	\350\336
!P\"\205H\337\340!\204'\341\340!\203+\340!\210\351\352P!\2039\352P\202H\351\353P!\203G\353P\202H\316,.	\207" [file v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-flush-file-property dired-compress-file-suffixes nil string-match file-symlink-p 2 0 "%s..." format #1="Uncompressing %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2="" 1 2 #3="Warning: " #4="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5="(%d) # " vec-or-proc default-directory] 6) ((error)) 3 (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [file pr tm subrp make-progress-reporter functionp format #1# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v file args fmt-string level subrp cancel-timer functionp 0 #7="%s...done" format #1# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) tramp-send-command-and-check " " tramp-shell-quote-argument subrp dired-remove-file functionp #6="Compressing %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [file pr tm subrp make-progress-reporter functionp format #6# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v file args fmt-string level subrp cancel-timer functionp 0 #7# format #6# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) "gzip -f " file-exists-p ".gz" ".z" hop suffix suffixes case-fold-search tm pr args fmt-string level vec-or-proc tramp-message-show-progress-reporter-message tramp-message-show-message tramp-verbose] 6 (#$ . 108132)])
#@42 Like `insert-directory' for Tramp files.
(defalias 'tramp-sh-handle-insert-directory #[(filename switches &optional wildcard full-directory-p) "\306!\307!\310	!\311	!\312	!\313	!\314	!@\315\316!\2036\317J\2046\320\321ABF\"\202\370;\203B\322!\323\235\203V\324	!\204V\325\323\"A\203h\320\326
C\"A\320\327
C\"B\204t\330\331\332\333#\334\335\336#A\203\211\336AQ	\337\340A\203\230\341\202\231\342B\203\242\341\202\243\342FCDEF\343\344\345\217\210,B\203\324\346	\347\350\351	!A\203\311
\202\316\335
\352P!$\"\210\202\353	\347\354\335\320\327
C\"!\"\355\335\320\327
C\"!$\210\346	\347\356\351	!A\204\357\320\326
C\"G!\203\360\202\335\320\326
C\"!$\"\210`Gr\361	!q\210\362 )c\210\363y\210\364\365!\203+\366y\210\364\367!\203i\370\225\371 H\211Ib\210`HW\203hG\372p!\\G\372p!\\HJHf\373>\203d\374JH\375\376$\210*\202<*\377 b\210\364\201L!\203\202\201My\210\370\224`|\210\202m\201N\201O\201P	\201Q\360#\"\204\255Gb\210\201RK\343\376#\203\255\201S\360!\210\202\231A\204\365B\204\365db\210\201T!\203\320\201U\201VG\201W#b\210\201U\357\326!G!\203\340\352\202\343\326!G\201W#\210\201S\201X!\376\"\210db).\207" [filename v method user host localname expand-file-name tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop featurep ls-lisp ls-lisp-use-insert-directory-program tramp-run-real-handler insert-directory split-string "--dired" tramp-get-ls-command-with-dired delete file-name-nondirectory file-name-directory add-to-list switches "-d" append mapconcat tramp-shell-quote-argument " " 4 "Inserting directory `ls %s %s', wildcard %s, fulldir %s" "yes" "no" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command format "%s %s %s 2>/dev/null" tramp-get-ls-command "." tramp-barf-unless-okay "cd %s" "Couldn't `cd %s'" "%s %s %s" zerop #1# tramp-get-buffer buffer-string -2 looking-at "//SUBDIRED//" -1 "//DIRED//\\s-+" 0 point-at-eol read (10 32) put-text-property dired-filename t point-at-bol hop wildcard full-directory-p args fmt-string level vec-or-proc beg end databeg start tramp-color-escape-sequence-regexp "//" 1 string-match "color" tramp-get-connection-property "ls" re-search-forward replace-match file-symlink-p search-backward "->" noerror file-relative-name] 11 (#$ . 113095)])
#@159 Like `expand-file-name' for Tramp files.
If the localname part of the given filename starts with "/../" then
the result will be a local, non-Tramp, filename.
(defalias 'tramp-sh-handle-expand-file-name #[(name &optional dir) "\206		\206	\306\307\n!\204\310!\nP\311\n!\204#\312\313\n\314D\"\207\315\n!\316!\317!\320!;\321!<\322!=\312\307<C\"\204M\323<P<\324\325<\"\203\263\326\327<\"\326\330<\">\211?\331\230\203v\324\332\f\"\203v?
P?\333?\334#\211@\334=\203\247\335\336\337\340?!\"\"\210r\341!q\210eb\210`\342 {)@\343?@#\210@)\211?>P<*\324\344<\"\203\307\345\306\346\211<$<\202\263\347\314A\350\351!\203\332\352\351\353N@!\206O\354\355!\203\361\356\355!\204\354\357\355!\205O\355 \202O\360\361!\211B\205\376\362B!)\203\n\310\360\361!!\202O\360\363!\211B\205\362B!)\203#\310\360\363!!\202O\360\364!\211B\2050\362B!)\203<\310\360\364!!\202O\365\366!\203H\310\366!\202O\367\370!\210\310\371!)C\372\f
;\312\313<C\"=%.\207" [dir default-directory name v method user "/" file-name-absolute-p file-name-as-directory tramp-connectable-p tramp-run-real-handler expand-file-name nil tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop "~/" string-match "\\`\\(~[^/]*\\)\\(.*\\)\\'" match-string 1 2 "~" "\\`su\\(do\\)?\\'" tramp-get-connection-property undef tramp-send-command format "cd %s; pwd" tramp-shell-quote-argument tramp-get-buffer point-at-eol tramp-set-connection-property "//" replace-match t 47 boundp temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-directory-p "TMP" "TMPDIR" file-exists-p "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp" tramp-make-tramp-file-name host localname hop fname uname value file-name-handler-alist d directory-sep-char] 8 (#$ . 116134)])
#@41 Like `executable-find' for Tramp files.
(defalias 'tramp-sh-handle-executable-find #[(command) "\306!\307	!\310	!\311	!\312	!\313	!\314	\315	!\316$.\207" [default-directory v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-find-executable tramp-get-remote-path t hop command] 5 (#$ . 118095)])
#@20 Flush file caches.
(defalias 'tramp-process-sentinel #[(proc event) "\306!\307>?\205-\310\311\312#\211\205,	\313\314\nD\312\315\316\217\210,\317!\210\320	\321\")\207" [proc vec event args fmt-string level process-status (run open) tramp-get-connection-property "vector" nil 5 "Sentinel called: `%s' `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-flush-connection-property tramp-flush-directory-property #1# vec-or-proc] 6 (#$ . 118526)])
#@44 Like `start-file-process' for Tramp files.
(defalias 'tramp-sh-handle-start-file-process #[(name buffer program &rest args) "\306!\307	!\310	!\311	!\312	!\313	!23;\2058\314\315\316
!\316\314\317\320!4#!\321\31635B\322#$3?\206@6\3237!\205K\3247!8\325\3269:;<6=7\204f\327>!7\330;!\203~:T:\314\3318:#;\202f;8\332	\3338#\210\332	\3347#\210r\335	!q\210\336\216\212\214\337\326`?@A\340 \210dd}\210\341	!\210~\210?`|\210dd}\210=\203\311\342	=\326\337$\210\202\343\344	!\345\"\204	\346\3478C5B/C\326DC\350\351\352/\211\353N\354\314B5#E!C5BEC\326\355\356\217\210,\357/\354\314B5#C\"\210-+\344	!F\326\360\361\217\210F.\207" [default-directory v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop format "cd %s; exec env PS1=%s %s" tramp-shell-quote-argument "%s %s" file-remote-p mapconcat " " buffer-live-p buffer-modified-p 0 nil generate-new-buffer get-process "%s<%d>" tramp-set-connection-property "process-name" "process-buffer" tramp-get-connection-buffer ((byte-code "\303\304 \"\203\305\306	!\307\"\210\310p!\210\202\311\n!\210\312	\313\307#\210\312	\314\307#\207" [tramp-temp-buffer-name v bmp string-match buffer-name set-process-buffer tramp-get-connection-process nil kill-buffer set-buffer-modified-p tramp-set-connection-property "process-name" "process-buffer"] 4)) t clear-visited-file-modtime tramp-maybe-open-connection tramp-send-command tramp-compat-process-get tramp-get-connection-process remote-tty file-error "pty association is not supported for `%s'" 1 "%s" error-message-string error-message apply (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) signal (tramp-compat-set-process-query-on-exit-flag p t) ((error)) hop program tramp-initial-end-of-output args tramp-process-connection-type buffer name tramp-current-connection i name1 bmp command tramp-temp-buffer-name mark buffer-read-only buffer-undo-list fmt-string vec-or-proc tramp-message-show-message level p] 10 (#$ . 119611)])
#@38 Like `process-file' for Tramp files.
(defalias 'tramp-sh-handle-process-file #[(program &optional infile destination display &rest args) "\247\203\306!\203\307\310!\210\311	!\312\n!\313\n!\314\n!\315\n!)\316\n!*\317\211\211\211\211\211\211+,-./01\320\32123B\322#14\204T\3230\202\234\3244!4\325	4\"\203\206\3114!\312\n!\313\n!\314\n!\315\n!)\316\n!*).0\202\234\326\n!0\327\f
0$/\3304/\331#\2100\203\252\332\33310#1\334!\203\266,\202c;\203\303\335!,\202c:\203\\\334@!\203\326@,\202\355@;\203\345\335@!,\202\355@\203\355p,\2115A@);\203LA\324\2115A@)!\240\210\325	\2115A@)\"\203;\311\2115A@)!\312\n!\313\n!\314\n!\315\n!)\316\n!*)..\202c\326\n!.\327\f
.$-\202c\2115A@)\204c\323.\202c\203cp,.\203q\332\3361.#1\317\337\340\217\210-\203\210\341-\2115A@)\331#\210/\203\222\342/!\210\343\344!\203\235\344J\203\242\345\n\346\"\210+\347\232\203\256\350 \202\260+.
\207" [destination default-directory v method user host zerop error "Implementation does not handle immediate return" tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop nil mapconcat tramp-shell-quote-argument " " "/dev/null" expand-file-name tramp-equal-remote tramp-make-tramp-temp-file tramp-make-tramp-file-name copy-file t format "%s <%s" bufferp get-buffer-create "%s 2>%s" (byte-code "\304\216\305\306\307\310	!\n#\311\211$\203\312\202\313)\305\207" [v localname command ret ((byte-code "\203rq\210r\303	!q\210\304 )c\210)\n\203\305!\210\303\207" [outbuf v display tramp-get-connection-buffer buffer-string display-buffer] 2)) tramp-send-command-and-check format "\\cd %s; %s" tramp-shell-quote-argument t 0 1] 6) ((quit (byte-code "\302\303!!\210\304\302\207" [v ret kill-buffer tramp-get-connection-buffer -1] 3)) (error (byte-code "\302\303!!\210\304\302\207" [v ret kill-buffer tramp-get-connection-buffer 1] 3))) rename-file delete-file boundp process-file-side-effects tramp-flush-directory-property "" -1 keyboard-quit localname hop ret outbuf tmpstderr stderr tmpinput input command program args infile x] 8 (#$ . 122322)])
#@45 Like `call-process-region' for Tramp files.
(defalias 'tramp-sh-handle-call-process-region #[(start end program &optional delete buffer display &rest args) "\306\307\307\310\311J\307\312\313!\203\314\313\315N@!\206\211\316\317!\2031\320\317!\204,\321\317!\205\211\317 \202\211\322\323!\211\205<\324!)\203H\325\322\323!!\202\211\322\326!\211\205S\324!)\203_\325\322\326!!\202\211\322\327!\211\205j\324!)\203v\325\322\327!!\202\211\330\331!\203\202\325\331!\202\211\332\333!\210\325\334!)\"\335	\336\"\307\211%\337\340\217\210%.&\341'(&#\210)\203\263'(|\210\342\216\343\344*&+,-&*\207" [dir-flag filename file-name-handler-alist d prefix extension #1="" nil expand-file-name tramp-temp-name-prefix boundp temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-directory-p file-name-as-directory "TMP" "TMPDIR" file-exists-p "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp" file-name-extension t (byte-code "\304\305!\204\f\306\305!\205\305	\n#\304\207" [prefix dir-flag extension result subrp make-temp-file functionp] 4) ((error (byte-code "\300\301\302\217\204\300\207" [nil (byte-code "\304!	P\203\305\n!\210\202\306\307\310\n\310\311%\210\310\207" [prefix extension result dir-flag make-temp-name make-directory write-region #1# nil silent] 6) ((file-already-exists t))] 3))) write-region ((delete-file tmpfile)) apply call-process result tmpfile start end delete program buffer display args] 7 (#$ . 124551)])
#@41 Like `file-local-copy' for Tramp files.
(defalias 'tramp-sh-handle-file-local-copy #[(filename) "\306!\307	!\310	!\311	!\312	!\313	!<\314!\204_	\315\316C=>?\317@?\320\321\322\211\323N\324\325>=#E!C=>A?\317\326\327\217\210,\330\324\325>=#C\"\210-\331\332\333!!8B\334	\335B#C\334	\336B#D\317E\317F\337\340J\317F\341\342!\203\225\343\342\344N@!\206\n\345\346!\203\254\347\346!\204\247\350\346!\205\n\346 \202\n\351\352!\211G\205\271\353G!)\203\305\354\351\352!!\202\n\351\355!\211G\205\322\353G!)\203\336\354\351\355!!\202\n\351\356!\211G\205\353\353G!)\203\367\354\351\356!!\202\n\314\357!\203\354\357!\202\n\360\361!\210\354\362!)\"H\363\364\"I\317\211J\365\366\217\210J.K\367\370\371\217\210\372\373!\210K.\n\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-exists-p file-error "Cannot make local copy of non-existing file `%s'" nil 1 #18="%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) signal 7 file-attributes file-truename tramp-get-inline-coding "remote-encoding" "local-decoding" expand-file-name tramp-temp-name-prefix boundp temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv #9="TEMP" file-directory-p file-name-as-directory #10="TMP" #11="TMPDIR" #12="c:/temp" message #13="Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." #14="/tmp" file-name-extension t #15=(byte-code "\304\305!\204\f\306\305!\205\305	\n#\304\207" [prefix dir-flag extension result subrp make-temp-file functionp] 4) #16=((error (byte-code "\300\301\302\217\204\300\207" [nil (byte-code "\304!	P\203\305\n!\210\202\306\307\310\n\310\311%\210\310\207" [prefix extension result dir-flag make-temp-name make-directory write-region #1# nil silent] 6) ((file-already-exists t))] 3))) err (byte-code "\306!\204
\307	\"\203\310\n\311\211$\210\202U\f\203\376\212\312\211@\313\314\315\316\n\"CABCD\312\317\320\217\210,E\203OF\203O\313G\313^X\203O\312\321\322\217\210\323\216E\205X
?E\324\315\f\325H!\"\326#\210,\327I!\203\333\330\331!JrJq\210\332\216\333\312!\210\334\335!!\210\312\211@\313\314\315\336\nI#CABCD\312\337\340\217\210,E\203\271F\203\271\313G\313^X\203\271\312\341\342\217\210\343\216E\205\302
?EIed\"\210\312\344KL\345ed#\210.	\202\351\n\312M\312L\346\347J\312L\350\351!\203\370\352\351\353N@!\206m\354\355!\203\356\355!\204\n\327\355!\205m\355 \202m\357\360!\211N\205\361N!)\203(\362\357\360!!\202m\357\363!\211N\2055\361N!)\203A\362\357\363!!\202m\357\364!\211N\205N\361N!)\203Z\362\357\364!!\202m\365\366!\203f\362\366!\202m\367\370!\210\362\371!)\"O\372\n\311\"P\312\211Q\373\374\217\210Q.R\312\344KL\345edR#\210*\312\211@\313\314\315\375\nI#CABCD\312\376\377\217\210,E\203\314F\203\314\313G\313^X\203\314\312\201U\201V\217\210\201W\216E\205\327
?E\201X\216\201YIR#\210.\201Z\201[\n!\"\210\201\\!\210)\202U\201]\201^SCABTD\312FD\201_\201`\201aT\211\201bN\201c\315BA#E!CABCD\312\201d\201e\217\210,\201TT\201c\315BA#C\"\210-\312\207" [v size filename tmpfile rem-enc tm tramp-local-host-p tramp-method-out-of-band-p copy-file t nil 3 "%s..." format #5="Encoding remote file %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [filename pr tm subrp make-progress-reporter functionp format #5# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v filename args fmt-string level subrp cancel-timer functionp 3 #8="%s...done" format #5# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) tramp-barf-unless-okay tramp-shell-quote-argument "Encoding remote file failed" functionp generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#6=#:temp-buffer buffer-name kill-buffer] 2)) set-buffer-multibyte insert-buffer-substring tramp-get-buffer #7="Decoding remote file %s with function %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "\304\305!\204\f\306\305!\205\305\307\310	#!\211\205\311\312\313\314\n$\304\207" [filename loc-dec pr tm subrp make-progress-reporter functionp format #7# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n#C\315\316\317\217\210,\315\207" [tm v filename loc-dec args fmt-string subrp cancel-timer functionp 3 #8# format #7# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) level vec-or-proc] 7)) binary write-region expand-file-name tramp-temp-name-prefix boundp temporary-file-directory eval standard-value fboundp temp-directory subrp getenv #9# file-directory-p file-name-as-directory #10# #11# file-exists-p #12# message #13# #14# file-name-extension #15# #16# #17="Decoding remote file %s with command %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) pr args fmt-string level vec-or-proc tramp-message-show-progress-reporter-message tramp-message-show-message tramp-verbose localname loc-dec #6# coding-system-for-write file-name-handler-alist dir-flag d prefix extension result tmpfile2 method signal (byte-code "\304\305!\204\f\306\305!\205\305\307\310	#!\211\205\311\312\313\314\n$\304\207" [filename loc-dec pr tm subrp make-progress-reporter functionp format #17# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n#C\315\316\317\217\210,\315\207" [tm v filename loc-dec args fmt-string subrp cancel-timer functionp 3 #8# format #17# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) level vec-or-proc] 7)) ((delete-file tmpfile2)) tramp-call-local-coding-command set-file-modes tramp-default-file-modes tramp-set-file-uid-gid file-error "Wrong method specification for `%s'" 1 #18# error-message-string error-message apply (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error))] 10) (((error quit) (byte-code "\302!\210\303	@	A\"\207" [tmpfile err delete-file signal] 3))) run-hooks tramp-handle-file-local-copy-hook hop args fmt-string vec-or-proc tramp-message-show-message level size rem-enc loc-dec dir-flag file-name-handler-alist d prefix extension result tmpfile] 10 (#$ . 126139)])
#@56 Like `insert-file-contents-literally' for Tramp files.
(defalias 'tramp-sh-handle-insert-file-contents-literally #[(filename &optional visit beg end replace) "\306\211\307\211\310\311!\205\f\311K\312\313\314\216\311\315M\210\313%.\207" [inhibit-file-name-operation inhibit-file-name-handlers find-buffer-file-type-function coding-system-for-write coding-system-for-read after-insert-file-functions nil no-conversion fboundp find-buffer-file-type (jka-compr-handler image-file-handler) insert-file-contents ((byte-code "\203\301M\210\202\302\301!\210\301\207" [find-buffer-file-type-function find-buffer-file-type fmakunbound] 2)) #[(filename) "\300\207" [t] 1] format-alist filename visit beg end replace] 7 (#$ . 137544)])
#@127 Like `make-auto-save-file-name' for Tramp files.
Returns a file name in `tramp-auto-save-directory' for autosaving this file.
(defalias 'tramp-sh-handle-make-auto-save-file-name #[nil "\302\303\301 \"\304\305!\203\306\307\305J\"\210\203(\310	\"\311!\204(\312\313\"\210\314\315!\2045\316\315\317\"\202A\320\315!\210\316\315\317\"\321\315!\210*\207" [tramp-auto-save-directory buffer-file-name tramp-subst-strs-in-string (("_" . "|") ("/" . "_a") (":" . "_b") ("|" . "__") ("[" . "_l") ("]" . "_r")) boundp auto-save-file-name-transforms mapc #[(x) "\305@	\"\205\232\211AA)@?\205\232\n\206\230\306\307\310!\203(\311\310\312N@!\206\227\313\314!\203?\315\314!\204:\316\314!\205\227\314 \202\227\317\320!\211\205J\321\f!)\203V\322\317\320!!\202\227\317\323!\211\205a\321\f!)\203m\322\317\323!!\202\227\317\324!\211\205x\321\f!)\203\204\322\317\324!!\202\227\325\326!\203\220\322\326!\202\227\327\330!\210\322\331!)\211\207" [x buffer-file-name tramp-auto-save-directory file-name-handler-alist d string-match nil boundp temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-directory-p file-name-as-directory "TMP" "TMPDIR" file-exists-p "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp"] 4] expand-file-name file-exists-p make-directory t ad-is-active make-auto-save-file-name tramp-run-real-handler nil ad-deactivate ad-activate] 4 (#$ . 138301)])
#@38 Like `write-region' for Tramp files.
(defalias 'tramp-sh-handle-write-region #[(start end filename &optional append visit lockname confirm) "\306!\307!\310	!\311	!\312	!\313	!\314	!@A\203p\315!\203p\316\317\320\"!\204p	\321\322\323BCD\323ED\324\325\326\211\327N\330\317CB#E!CBCFD\323\331\332\217\210,\333\330\317CB#C\"\210-\334\335\336\"8\206}\337	\336\"\340\335\336\"8\206\212\341	\336\"GH\342	!\203\301\323I\343\344
!!\205\250\345
!\206\250\343
!)\203\301\346\347JK
L\350MA\257\"\210\202\370\212\351!)N\323\211OI\352\353!\203\335\354\353\355N@!\206R\356\357!\203\364\360\357!\204\357\361\357!\205R\357 \202R\362\363!\211P\205\345P!)\203
\364\362\363!!\202R\362\365!\211P\205\345P!)\203&\364\362\365!!\202R\362\366!\211P\2053\345P!)\203?\364\362\366!!\202R\315\367!\203K\364\367!\202R\370\371!\210\364\372!)+Q\206\323R\323I\306\373J\323I\352\353!\203w\354\353\355N@!\206\354\356\357!\203\216\360\357!\204\211\361\357!\205\354\357 \202\354\362\363!\211P\205\233\345P!)\203\247\364\362\363!!\202\354\362\365!\211P\205\264\345P!)\203\300\364\362\365!!\202\354\362\366!\211P\205\315\345P!)\203\331\364\362\366!!\202\354\315\367!\203\345\364\367!\202\354\370\371!\210\364\372!)\"S\374\375\"T\323\211U\376\377\217\210U.VL\203\201gV\201h#\210\323\201iV\"WI\201j\201k\201l\217\210\352\201c!\2039\201cJO*N\203Y\201mV\201nN\206O\201o\201p\201q!\"\"\210\201r\201sV!8X\201t	\201uX#Y\201t	\201vX#Z\342	!\204\215\201w	X\"\203\332J;\204\306K\206\231ddU\203\306J\206\244eeU\203\306\201x\n\201y\"\203\306VQ\201j\201z\201{\217\210\202\355\323Q\201|\216\201gV\375#\210)\202\355Y\203\247\201}\216\201~\201![r[q\210\201\200\216\201\201\323!\210\361Z!\203\362\323\211\\]	\340\201\202\317\201\203Z\"CBCFD\323\201\204\201\205\217\210,^\203CE\203C\340_\340^X\203C\323\201\206\201\207\217\210\201\210\216^\205O\\?^\201\211`\201\212V!\210)\323I\352\353!\203p\354\353\355N@!\206\345\356\357!\203\207\360\357!\204\202\361\357!\205\345\357 \202\345\362\363!\211P\205\224\345P!)\203\240\364\362\363!!\202\345\362\365!\211P\205\255\345P!)\203\271\364\362\365!!\202\345\362\366!\211P\205\306\345P!)\203\322\364\362\366!!\202\345\315\367!\203\336\364\367!\202\345\370\371!\210\364\372!)aZed\"\210-\202\232\323\211\\]	\340\201\202\317\201\213Z\"CBCFD\323\201\214\201\215\217\210,^\2033E\2033\340_\340^X\2033\323\201\216\201\217\217\210\201\220\216^\205?\\?^\201\221\201\222ZV\375#!\204\231	\321\201\223ZDBCD\323ED\324\325\326\211\327N\330\317CB#E!CBCFD\323\201\224\201\225\217\210,\333\330\317CB#C\"\210-,\323\211\\]	\340\201\202\317\201\226\"CBCFD\323\201\227\201\230\217\210,^\203\332E\203\332\340_\340^X\203\332\323\201\231\201\232\217\210\201\233\216^\205\346\\?^db\210n\204\364\201\234 \210\201\235	\317Y\201\236P\201\237
!\201\240 #\"\210\201\241	\323\201\242Y%\210b\203\242\201\243 \210\201\221\201\244\201\245V\375#!\203\242\201\246	\317\201\247\201\237
!\"\"\203\242\201\240 r\201\250	!q\210\201\240 )\230\204\242	\321\201\242YDBCD\323ED\324\325\326\211\327N\330\317CB#E!CBCFD\323\201\251\201\252\217\210,\333\330\317CB#C\"\210-.\202\355	\321\201\253\nCBCD\323ED\324\325\326\211\327N\330\317CB#E!CBCFD\323\201\254\201\255\217\210,\333\330\317CB#C\"\210-+O\203\367Oc,\201\256	\344
!\"\210\201\256	
\"\210\323\375dce\375=\204e;\203D\335\336\"f\201\257\201\260f8!\210\334f8HU\203C\340f8GU\203C\323d)d\203S\201\261HG#\210e\375=\204ee\203ee;\203\200	\201o\201\262CBCFD\323\201\263\201\264\217\210,\201\265\201\266!.\n\207" [filename v method user host localname expand-file-name tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-exists-p y-or-n-p format "File %s exists; overwrite anyway? " file-error "File not overwritten" nil 1 "%s" error-message-string error-message apply (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #3="Warning: " #4="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5="(%d) # " vec-or-proc default-directory] 6) ((error)) signal 2 tramp-compat-file-attributes integer tramp-get-remote-uid 3 tramp-get-remote-gid tramp-local-host-p file-writable-p file-name-directory file-directory-p tramp-run-real-handler write-region no-message tramp-default-file-modes boundp temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-name-as-directory "TMP" "TMPDIR" "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp" tramp-temp-name-prefix file-name-extension t (byte-code "\304\305!\204\f\306\305!\205\305	\n#\304\207" [prefix dir-flag extension result subrp make-temp-file functionp] 4) ((error (byte-code "\300\301\302\217\204\300\207" [nil (byte-code "\304!	P\203\305\n!\210\202\306\307\310\n\310\311%\210\310\207" [prefix extension result dir-flag make-temp-name make-directory write-region #1# nil silent] 6) ((file-already-exists t))] 3))) hop confirm args fmt-string vec-or-proc tramp-message-show-message level gid uid file-name-handler-alist start end append lockname modes coding-system-used d tramp-temp-buffer-file-name dir-flag prefix extension result tmpfile file-coding-system-alist size rem-dec loc-enc #2=#:temp-buffer tm pr tramp-message-show-progress-reporter-message tramp-verbose coding-system-for-read default-directory file-precious-flag last-coding-system-used need-chown visit file-attr copy-file ok tramp-find-file-name-coding-system-alist err (byte-code "\306\307	\n\310\f
\257\"\207" [start end tmpfile append lockname confirm tramp-run-real-handler write-region no-message] 9) (((error quit) (byte-code "\303\304	!\210\305\n@\nA\"\207" [tramp-temp-buffer-file-name tmpfile err nil delete-file signal] 3))) set-file-modes logior 0 tramp-compat-octal-to-decimal "0400" 7 file-attributes tramp-get-inline-coding "remote-decoding" "local-encoding" tramp-method-out-of-band-p tramp-get-method-parameter tramp-copy-keep-tmpfile (copy-file tmpfile filename t) (((error quit) (byte-code "\303\304	!\210\305\n@\nA\"\207" [tramp-temp-buffer-file-name tmpfile err nil delete-file signal] 3))) ((delete-file tmpfile)) ((delete-file tmpfile)) generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#2# buffer-name kill-buffer] 2)) set-buffer-multibyte "%s..." #6="Encoding region using function `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [loc-enc pr tm subrp make-progress-reporter functionp format #6# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v loc-enc args fmt-string level subrp cancel-timer functionp 3 #8="%s...done" format #6# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) binary insert-file-contents-literally #7="Encoding region using command `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [loc-enc pr tm subrp make-progress-reporter functionp format #7# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v loc-enc args fmt-string level subrp cancel-timer functionp 3 #8# format #7# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) zerop tramp-call-local-coding-command "Cannot write to `%s', local encoding command `%s' failed" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) #9="Decoding region into remote file %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [filename pr tm subrp make-progress-reporter functionp format #9# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v filename args fmt-string level subrp cancel-timer functionp 3 #8# format #9# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) newline tramp-send-command " <<'EOF'\n%sEOF" tramp-shell-quote-argument buffer-string tramp-barf-unless-okay "Couldn't write region to `%s', decode using `%s' failed" erase-buffer tramp-compat-call-process "cksum" tramp-send-command-and-check "cksum <%s" tramp-get-buffer (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) "Method `%s' should specify both encoding and decoding command or an rcp program" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) tramp-flush-file-property set-visited-file-modtime 5 tramp-set-file-uid-gid "Wrote %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) run-hooks tramp-handle-write-region-hook] 11 (#$ . 139802)])
#@76 List used to collect file names, which are checked during `vc-registered'.
(defvar tramp-vc-registered-file-names nil (#$ . 155496))
#@39 Like `vc-registered' for Tramp files.
(defalias 'tramp-sh-handle-vc-registered #[(file) "\306\307\310\216	\203\311 \312\313	\"\210\314\n!\315!\316!\317!0\320!1\321!2\307\21134\322\323\324\325\n\"C5678\307\326\327\217\210,9\203a:\203a\322;\322^X\203a\307\330\331\217\210\332\2169\205k3?9\307\333 <\334BC=>?\307\335\336\217\210\337\340?C5678\307\341\342\217\210,?\203\347\343\324@\344!\324\345\346!\"#\347#\210\350\324\351\352\353?\354#\"\"\307A\211B\203\346B@A\355A@A\211CA@)AA\211CA@)$\210BA\211B\204\300*+\307D\356\357\nC\".\207" [#1=#:current-message #2=#:with-temp-message file v method user #4="" nil ((byte-code "\203	\203\302\303	\"\210\202\302\304!\210\304\207" [#2# #1# message #3="%s" nil] 3)) current-message message #3# tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop 3 "%s..." format #5="Checking `vc-registered' for %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #4# 1 2 #6="Warning: " #7="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #8="(%d) # " vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [file pr tm subrp make-progress-reporter functionp format #5# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm v file args fmt-string level subrp cancel-timer functionp 3 "%s...done" format #5# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #4# 1 2 #6# #7# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #8# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) current-time tramp-vc-file-name-handler (byte-code "\301\302C\"\207" [file tramp-run-real-handler vc-registered] 3) ((error)) 10 "\n%s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #4# 1 2 #6# #7# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #8# vec-or-proc default-directory] 6) ((error)) tramp-maybe-send-script tramp-get-file-exists-command "%s -r" tramp-get-test-command "tramp_vc_registered_read_file_names" tramp-send-command-and-read "tramp_vc_registered_read_file_names <<'EOF'\n%s\nEOF\n" mapconcat tramp-shell-quote-argument "\n" tramp-set-file-property tramp-run-real-handler vc-registered host localname hop tm pr args fmt-string level vec-or-proc tramp-message-show-progress-reporter-message tramp-message-show-message tramp-verbose tramp-file-name-regexp file-name-handler-alist remote-file-name-inhibit-cache tramp-vc-registered-file-names tramp-vc-registered-read-file-names elt --dolist-tail-- x process-file-side-effects] 10 (#$ . 155635)])
#@112 Invoke remote-shell Tramp file name handler.
Fall back to normal file name handler if no Tramp handler exists.
(defalias 'tramp-sh-file-name-handler #[(operation &rest args) "\203	\204\306\307\310\311C\"\210\312\216\313\211\314 \315\216\316\f
\"\211\2031\317A\"\2026\320\f\".\207" [tramp-locked tramp-locker tl save-match-data-internal operation tramp-sh-file-name-handler-alist nil signal file-error "Forbidden reentrant call of Tramp" ((byte-code "\302\207" [tl tramp-locked nil] 1)) t match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) assoc apply tramp-run-real-handler fn args] 4 (#$ . 159847)])
#@71 Invoke special file name handler, which collects files to be handled.
(defalias 'tramp-vc-file-name-handler #[(operation &rest args) "\306 \307\216\310\311\312	\n#!\313	\"\314
!\315!\316!\317!\320!\321! \f\203J	\322>\203J\323\324\325#\210\326\202t\f\203X	\327=\203X\330\202t\f\203^	\210\f\203p\306 \331\216\311\fA\n\"*\202t\332	\n\".\n\207" [save-match-data-internal operation args tramp-sh-file-name-handler-alist fn filename match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) tramp-replace-environment-variables apply tramp-file-name-for-operation assoc tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop (file-exists-p file-readable-p) add-to-list tramp-vc-registered-file-names append nil process-file 0 ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) tramp-run-real-handler v method user host localname hop] 5 (#$ . 160524)])
#@119 Define in remote shell function NAME implemented as SCRIPT.
Only send the definition if it has not already been done.
(defalias 'tramp-maybe-send-script #[(vec script name) "\306\307!\310\311#\n	\235?\205f\311\211\312\313\314\315\n\"C\311\316\317\217\210,\203@\203@\312\320^X\203@\311\321\322\217\210\323\216\205I?\324\314\325\n\314\326!\"#\327\n$\210\330\307!\310\n	B#,)\207" [vec scripts name tm pr args tramp-get-connection-property tramp-get-connection-process "scripts" nil 5 "%s..." format #1="Sending script `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2="" 1 2 #3="Warning: " #4="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5="(%d) # " vec-or-proc default-directory] 6) ((error)) 3 (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [name pr tm subrp make-progress-reporter functionp format #1# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm vec name args fmt-string level subrp cancel-timer functionp 5 "%s...done" format #1# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) tramp-barf-unless-okay "%s () {\n%s\n}" tramp-get-remote-perl "Script %s sending failed" tramp-set-connection-property fmt-string level vec-or-proc tramp-message-show-progress-reporter-message tramp-message-show-message tramp-verbose script] 9 (#$ . 161567)])
(defalias 'tramp-set-auto-save #[nil "\301\302 !\303=\205\205\304\305!\207" [auto-save-default tramp-find-foreign-file-name-handler buffer-file-name tramp-sh-file-name-handler auto-save-mode 1] 2])
(byte-code "\300\301\302\303#\210\300\304\305\"\207" [add-hook find-file-hooks tramp-set-auto-save t tramp-unload-hook #[nil "\300\301\302\"\207" [remove-hook find-file-hooks tramp-set-auto-save] 3]] 4)
#@110 Run `test' on the remote system, given a SWITCH and a FILENAME.
Returns the exit code of the `test' program.
(defalias 'tramp-run-test #[(switch filename) "\306!\307	!\310	!\311	!\312	!\313	!\314	\315\316\317	!\320
!$\".\207" [filename v method user host localname tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop tramp-send-command-and-check format "%s %s %s" tramp-get-test-command tramp-shell-quote-argument hop switch] 8 (#$ . 164563)])
#@232 Run `test'-like program on the remote system, given FILE1, FILE2.
FORMAT-STRING contains the program name, switches, and place holders.
Returns the exit code of the `test' program.  Barfs if the methods,
hosts, or files, disagree.
(defalias 'tramp-run-test2 #[(format-string file1 file2) "\306	\"\204k\307\310!\203\202	!\311\n!\312\n!\313\n!\314\n!\315\n!\n\316\317\320 \320! \321\322\323\211\324N\325\326#E!C\" \320\327\330\217\210,\331\325\326#C\"\210.\307!#\311#!$\312#!%\313#!&\314#!'\315#!(\307!)\311)!*\312)!+\313)!,\314)!-\315)!.\332#\326/\333'!\333-!#\".\f\207" [file1 file2 v method user host tramp-equal-remote tramp-dissect-file-name tramp-tramp-file-p tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop file-error "tramp-run-test2 only implemented for same method, user, host" nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) signal tramp-send-command-and-check tramp-shell-quote-argument localname hop args fmt-string vec-or-proc tramp-message-show-message level v1 v1-method v1-user v1-host v1-localname v1-hop v2 v2-method v2-user v2-host v2-localname v2-hop format-string] 10 (#$ . 165108)])
#@471 Searches for PROGNAME in $PATH and all directories mentioned in DIRLIST.
First arg VEC specifies the connection, PROGNAME is the program
to search for, and DIRLIST gives the list of directories to
search.  If IGNORE-TILDE is non-nil, directory names starting
with `~' will be ignored. If IGNORE-PATH is non-nil, searches
only in DIRLIST.

Returns the absolute file name of PROGNAME, if found, and nil otherwise.

This function expects to be in the right *tramp* buffer.
(defalias 'tramp-find-executable #[(vec progname dirlist &optional ignore-tilde ignore-path) "r\306!q\210\307\n\204!\310\311\312\"\"\210eb\210\313\314!\203!\315P	\204|\f\203T\307\211\203N@A\316\317
\320H\"\204.
B\202.\237*\310\311\321\211\211\322\323\324#%\"\210db\210\325\326\307\327#\203|\330\307w\210\331\307w\210`\332 {	*\207" [vec result ignore-path progname ignore-tilde d tramp-get-connection-buffer nil tramp-send-command format "which \\%s | wc -w" looking-at "^\\s-*1$" "\\" char-equal 126 0 "while read d; do if test -x $d/%s -a -f $d/%s; then echo tramp_executable $d/%s; break; fi; done <<'EOF'\n%s\nEOF" mapconcat identity "\n" search-backward "tramp_executable " t "^ " " " point-at-eol newdl dirlist] 11 (#$ . 167026)])
#@196 Sets the remote environment PATH to existing directories.
I.e., for each directory in `tramp-remote-path', it is tested
whether it exists and if so, it is added to the environment
variable PATH.
(defalias 'tramp-set-remote-path #[(vec) "\305\306\307!\310\310\311\312\217\210,\313\306\314\315\316\317!\320#\"\"\207" [vec args fmt-string level vec-or-proc 5 format "Setting $PATH environment variable" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command "PATH=%s; export PATH" mapconcat identity tramp-get-remote-path ":"] 8 (#$ . 168278)])
#@182 Find a command on the remote host for checking if a file exists.
Here, we are looking for a command which has zero exit status if the
file exists and nonzero exit status otherwise.
(defalias 'tramp-find-file-exists-command #[(vec) "\306\307\310!\311\311\312\313\217\204[\311\314\315\217\204[\311\316\317\217\204[\311\320\321\217\204[\322\323\311\311\324\325\326\211\327N\330\331
\f#E!C\311\332\333\217\210,\334\330\331
\f#C\"\210-+\207" [result nonexistent existing vec args fmt-string "/" tramp-shell-quote-argument "/ this file does not exist " nil (byte-code "\304\305\306!\"\211\205\307\304\310	\n#\"\205\307\304\310	#\"?\207" [vec result existing nonexistent format "%s -e" tramp-get-test-command tramp-send-command-and-check "%s %s"] 6) ((error)) (byte-code "\304\211\205\305	\306\307\n#\"\205\305	\306\307#\"?\207" [result vec existing nonexistent "/bin/test -e" tramp-send-command-and-check format "%s %s"] 6) ((error)) (byte-code "\304\211\205\305	\306\307\n#\"\205\305	\306\307#\"?\207" [result vec existing nonexistent "/usr/bin/test -e" tramp-send-command-and-check format "%s %s"] 6) ((error)) (byte-code "\304\305\306!\"\211\205\307\304\310	\n#\"\205\307\304\310	#\"?\207" [vec result existing nonexistent format "%s -d" tramp-get-ls-command tramp-send-command-and-check "%s %s"] 6) ((error)) file-error "Couldn't find command to check if file exists" 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) signal vec-or-proc tramp-message-show-message level] 10 (#$ . 169463)])
#@20 Opens shell SHELL.
(defalias 'tramp-open-shell #[(vec shell) "\306\211\n\307\310\311\312\"C\306\313\314\217\210, \2030!\2030\307\"\315^X\2030\306\316\317\217\210\320\216 \2059? #$\306\211%&'('\203m%\204m'\211A'@&\321&@\"\203I&A%\202I\322\n\311\323\324(!%\206|\325$\326#\210,\327\330\n!\331#\210\322\n\311\332\324(!\"\326#\210\322\n\333\326#\210\322\n\334\326#\210\322\n\335\326#,\207" [tm pr vec shell args fmt-string nil 5 "%s..." format #1="Opening remote shell `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2="" 1 2 #3="Warning: " #4="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5="(%d) # " vec-or-proc default-directory] 6) ((error)) 3 (byte-code "\303\304!\204\f\305\304!\205\304\306\307\"!\211\205\310\311\312\313	$\303\207" [shell pr tm subrp make-progress-reporter functionp format #1# run-at-time 3 0.1 tramp-progress-reporter-update] 6) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314\n\"C\315\316\317\217\210,\315\207" [tm vec shell args fmt-string level subrp cancel-timer functionp 5 "%s...done" format #1# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #2# 1 2 #3# #4# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #5# vec-or-proc default-directory] 6) ((error)) vec-or-proc] 6)) string-match tramp-send-command "exec env ENV='' PROMPT_COMMAND='' PS1=%s PS2='' PS3='' %s %s" tramp-shell-quote-argument #2# t tramp-set-connection-property tramp-get-connection-process "remote-shell" "PS1=%s" "PS2=''" "PS3=''" "PROMPT_COMMAND=''" level vec-or-proc tramp-message-show-progress-reporter-message tramp-message-show-message tramp-verbose tramp-initial-end-of-output tramp-sh-extra-args extra-args item alist tramp-end-of-output] 7 (#$ . 171686)])
#@63 Opens a shell on the remote host which groks tilde expansion.
(defalias 'tramp-find-shell #[(vec) "r\306!q\210\307\310!\311\312#\206\313\314!\315\"\312\307\311\316#\211\316=\203s\317\320\321#\210\322\323\324 \"\204>\322\325\307\326\327#\"\203k\330\331\332!\321\211%\206l\330\333\332!\321\211%\206l\n\334\335\nC)*\312\336\337\217\210,\202l\n\340\311#\210)\211\n\230\204\222\341\342	C)*\312\343\344\217\210,\345	\"\210\307\346\316#\211\316=\203\273\317\347\350	\"\321#\210\321+\322\346\324 \"\205\263\321)\340\346#\210,\207" [vec shell default-shell value args fmt-string tramp-get-buffer tramp-get-connection-property tramp-get-connection-process "remote-shell" nil tramp-get-method-parameter tramp-file-name-method tramp-remote-shell undef tramp-send-command "echo ~root" t string-match "^~root$" buffer-string "\\(?:SunOS 5\\.1[01]\\)" "uname" #1="" tramp-find-executable "bash" tramp-get-remote-path "ksh" 2 "Couldn't find a remote shell which groks tilde expansion, using `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-set-connection-property 5 "Starting remote shell `%s' for tilde expansion" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-open-shell "busybox" format "%s --version" level vec-or-proc case-fold-search] 7 (#$ . 174439)])
#@189 Wait for shell prompt and barf if none appears.
Looks at process PROC to see if a shell prompt appears in TIMEOUT
seconds.  If not, it produces an error message with the given ERROR-ARGS.
(defalias 'tramp-barf-if-no-shell-prompt #[(proc timeout &rest error-args) "\305	\306\307\n##?\205\310\311\312\313\f%\207" [proc timeout shell-prompt-pattern tramp-shell-prompt-pattern error-args tramp-wait-for-regexp format "\\(%s\\|%s\\)\\'" apply tramp-error-with-buffer nil file-error] 7 (#$ . 176972)])
#@146 Set up an interactive shell.
Mainly sets the prompt and the echo correctly.  PROC is the shell
process to set up.  VEC specifies the connection.
(defalias 'tramp-open-connection-setup-interactive-shell #[(proc vec) "\306\n\307\n\310\311#\206\312\313\n!\314\"\"\210\n\315\316\311@\311\317\320\217\210,\321\n\322\323#\210\321\n\324\323#\210r\325A!q\210eb\210\326\324!\203[\327A\330\323#\210\n\315\331\311@\311\332\333\217\210,\321\n\334\323#\210*\n\315\335\311@\311\336\337\217\210,\321\n\340\341\342	!\"\323#\210\321\n\343\323#\210\321\n\344\323#\210\321\n\345\323#\210\n\315\346\311@\311\347\350\217\210,\321\n\351\323#\210r\325A!q\210eb\210\352\353!\2031\354\355!\204\271\356\355!\203\300\355A!\206\303\357\211BB\311\211CDB9\203\327B\211BBB@CBADC\204\351\357CD\204\361\357D\360D\361\"D\362\363\311\323#\203\360C\364\"C\354\365!\204\356\365!\203\365CD\"\210\n\315\366CDD@\311\367\370\217\210.\202?\362\363\311\323#\203?\321\n\371\323#\210)\321\n\372\323#\210\n\315\373\311@\311\374\375\217\210,\307\n\376\311#\327\n\376\377\n\201O\"#E\211F;\203\243FE\230\204\243\201P\n!\210\n\201Q\201RFED@\311\201S\201T\217\210,\201U\201V\201W\n!\"\210*\307A\201X\201Y#\211G\201Y=\203H\250\203\314H\201ZV\203\314H\202\373\n\315\201[\311@\311\201\\\201]\217\210,\201^\201_\307\n\376\201`#\"\203\370\201a\202\373\201ZG\327A\201XG#\210G\210)\201b\n!\210\201c\n!\210\321\n\201d\323#\210\201^\201e\307\n\376\201`#\"\2038\321\n\201f\323#\210\201^\201g\307\n\376\201`#\"\203Q\321\n\201h\323#\210\377\n\201i\201j#I\201kIG!\204r\201lA\201mI#\210)J\201nY\203\204\321\n\201o\323#\210\n\315\201p\311@\311\201q\201r\217\210,\201sK!\311\211LM\211N\203\377\201tN@\201u\"\211L\201v\201wLA\201u#\241\210LA;\203\356LA\201`\230\204\356\321\n\340\201xL@LAL@$\323#\210\202\366L@MBMNA\211N\204\253M\205\321\n\340\201y\201v\201wM\201z#\"\323#+\207" [tramp-initial-end-of-output tramp-end-of-output vec args fmt-string level tramp-open-shell tramp-get-connection-property "remote-shell" nil tramp-get-method-parameter tramp-file-name-method tramp-remote-shell 5 "Setting up remote shell environment" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command "stty -inlcr -echo kill '^U' erase '^H'" t "echo foo" process-buffer looking-at tramp-set-connection-property "remote-echo" "Remote echo still on. Ok." (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "stty icanon erase ^H cols 32767" "Setting shell prompt" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) format "PS1=%s" tramp-shell-quote-argument "PS2=''" "PS3=''" "PROMPT_COMMAND=''" "Determining coding system" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "echo foo ; echo bar" featurep mule subrp process-coding-system functionp undecided tramp-compat-coding-system-change-eol-conversion unix search-forward "
" dos set-buffer-process-coding-system "Setting coding system to `%s' and `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "stty -onlcr" "set +o vi +o emacs" "Checking system information" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "uname" tramp-send-command-and-read vec-or-proc proc cs cs-decode cs-encode new-uname old-uname value tramp-chunksize tty tramp-verbose tramp-remote-process-environment item unset env "echo \\\"`uname -sr`\\\"" tramp-cleanup 3 "Connection reset, because remote host changed from `%s' to `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) throw uname-changed tramp-maybe-open-connection "chunksize" undef 0 "Checking remote host type for `send-process-string' bug" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) string-match "^FreeBSD" #1# 500 tramp-set-remote-path tramp-find-shell "mesg n; biff n" "^IRIX64" "set +H" "BSD\\|Darwin" "stty -oxtabs" "echo \\\"`tty`\\\"" noerror zerop tramp-compat-process-put remote-tty 9 "stty -a" "Setting default environment" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) copy-sequence tramp-compat-split-string "=" mapconcat identity "%s=%s; export %s" "unset %s" " "] 9 (#$ . 177480)])
(autoload 'uudecode-decode-region "uudecode")
#@795 List of local coding commands for inline transfer.
Each item is a list that looks like this:

(FORMAT ENCODING DECODING)

FORMAT is  symbol describing the encoding/decoding format.  It can be
`b64' for base64 encoding, `uu' for uu encoding, or `pack' for simple packing.

ENCODING and DECODING can be strings, giving commands, or symbols,
giving functions.  If they are strings, then they can contain
the "%s" format specifier.  If that specifier is present, the input
filename will be put into the command line at that spot.  If the
specifier is not present, the input should be read from standard
input.

If they are functions, they will be called with two arguments, start
and end of region, and are expected to replace the region contents
with the encoded or decoded results, respectively.
(defconst tramp-local-coding-commands '((b64 base64-encode-region base64-decode-region) (uu tramp-uuencode-region uudecode-decode-region) (pack "perl -e 'binmode STDIN; binmode STDOUT; print pack(q{u*}, join q{}, <>)'" "perl -e 'binmode STDIN; binmode STDOUT; print unpack(q{u*}, join q{}, <>)'")) (#$ . 187022))
#@943 List of remote coding commands for inline transfer.
Each item is a list that looks like this:

(FORMAT ENCODING DECODING [TEST])

FORMAT is  symbol describing the encoding/decoding format.  It can be
`b64' for base64 encoding, `uu' for uu encoding, or `pack' for simple packing.

ENCODING and DECODING can be strings, giving commands, or symbols,
giving variables.  If they are strings, then they can contain
the "%s" format specifier.  If that specifier is present, the input
filename will be put into the command line at that spot.  If the
specifier is not present, the input should be read from standard
input.

If they are variables, this variable is a string containing a Perl
implementation for this functionality.  This Perl program will be transferred
to the remote host, and it is available as shell function with the same name.

The optional TEST command can be used for further tests, whether
ENCODING and DECODING are applicable.
(defconst tramp-remote-coding-commands '((b64 "base64" "base64 -d -i") (b64 "base64" "base64 -d") (b64 "mimencode -b" "mimencode -u -b") (b64 "mmencode -b" "mmencode -u -b") (b64 "recode data..base64" "recode base64..data") (b64 tramp-perl-encode-with-module tramp-perl-decode-with-module) (b64 tramp-perl-encode tramp-perl-decode) (uu "uuencode xxx" "uudecode -o /dev/stdout" "test -c /dev/stdout") (uu "uuencode xxx" "uudecode -o -") (uu "uuencode xxx" "uudecode -p") (uu "uuencode xxx" tramp-uudecode) (pack "perl -e 'binmode STDIN; binmode STDOUT; print pack(q{u*}, join q{}, <>)'" "perl -e 'binmode STDIN; binmode STDOUT; print unpack(q{u*}, join q{}, <>)'")) (#$ . 188136))
#@134 Find an inline transfer encoding that works.
Goes through the list `tramp-local-coding-commands' and
`tramp-remote-coding-commands'.
(defalias 'tramp-find-inline-encoding #[(vec) "\212\306\307	!\310\211\211\211\211\211\211\211()*+,-..\2038\n\2048.\211A.@\311\312\215\210\202 \n\204{	\313\314\310/01\31021\315\316\317\211\320N\321\3220/#E!C/031\310\323\324\217\210,\325\321\3220/#C\"\210-	\326\327+C/031\310\330\331\217\210,\332,\333+#\210	\326\334*C/031\310\335\336\217\210,\332,\337*#\210	\326\340)C/031\310\341\342\217\210,\332,\343)#\210	\326\344(C/031\310\345\346\217\210,\332,\347(#.\f\207" [tramp-local-coding-commands vec found ritem litem rem-test "xyzzy" tramp-get-connection-process nil wont-work-local (byte-code "@	A@\3068\f;\204)\307\310\fC\311\312\313\217\210,\202L\307\314\fC\311\315\316\217\210,\317\320\f\311\211#!\204L\321\322\311\"\210
;\204h\307\323
C\311\324\325\217\210,\202\213\307\326
C\311\327\330\217\210,\317\320
\311\211#!\204\213\321\322\311\"\210\n\203\242 \204\242\n\211A@!\331\332\215\210\202\213*\311\207" [litem tramp-remote-coding-commands remote-commands format loc-enc loc-dec 2 5 "Checking local encoding function `%s'" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) "Checking local encoding command `%s' for sanity" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) zerop tramp-call-local-coding-command throw wont-work-local "Checking local decoding function `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "Checking local decoding command `%s' for sanity" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) wont-work-remote (byte-code "	@\232\203\370	A@\306	8\307	8\211;\2038
\310\311\fC\"#$%\312\313\314\217\210,\315
\f\316#\2048\317\320\312\"\210\n;\204b\321\n!&\322\323&\"\203V\324\325\312\316&$&\202B\326
\nJ&#\210&)
\310\327\nC\"#$%\312\330\331\217\210,\315
\300\332\n\"\316#\204\205\317\320\312\"\210;\204\257\321!&\322\323&\"\203\243\324\325\312\316&$&\202\217\326
J&#\210&)
\310\333C\"#$%\312\334\335\217\210,\315
\300\336'\n$\316#\204\325\317\320\312\"\210r\337
!q\210eb\210\340\341'!!\204\354\317\320\312\"\210)	A@\306	8\316(\312\207" [format ritem rem-enc rem-dec rem-test vec 2 3 5 "Checking remote test command `%s'" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-send-command-and-check t throw wont-work-remote symbol-name string-match "-" replace-match "_" tramp-maybe-send-script "Checking remote encoding command `%s' for sanity" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "%s </dev/null" "Checking remote decoding command `%s' for sanity" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "echo %s | %s | %s" tramp-get-buffer looking-at regexp-quote args fmt-string level vec-or-proc name magic found] 8) vec args fmt-string level vec-or-proc found ritem] 5) file-error "Couldn't find an inline transfer encoding" 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) signal 5 "Using local encoding `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-set-connection-property "local-encoding" "Using local decoding `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "local-decoding" "Using remote encoding `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "remote-encoding" "Using remote decoding `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "remote-decoding" rem-dec rem-enc loc-dec loc-enc p magic local-commands args fmt-string vec-or-proc tramp-message-show-message level] 11 (#$ . 189765)])
#@355 Call the local encoding or decoding command.
If CMD contains "%s", provide input file INPUT there in command.
Otherwise, INPUT is passed via standard input.
INPUT can also be nil which means `/dev/null'.
OUTPUT can be a string (which specifies a filename), or t (which
means standard output and thus the current buffer), or nil (which
means discard it).
(defalias 'tramp-call-local-coding-command #[(cmd input output) "\305	\205\306\307\n\"?\205	\310=\205\310\311\f\306\307\n\"\203&\312\n	\"\202'\n;\2032\313P\2023\314P&\207" [tramp-encoding-shell input cmd output tramp-encoding-command-switch tramp-compat-call-process string-match "%s" t nil format "> " ""] 9 (#$ . 200556)])
#@194 List of compress and decompress commands for inline transfer.
Each item is a list that looks like this:

(COMPRESS DECOMPRESS)

COMPRESS or DECOMPRESS are strings with the respective commands.
(defconst tramp-inline-compress-commands '(("gzip" "gzip -d") ("bzip2" "bzip2 -d") ("xz" "xz -d") ("compress" "compress -d")) (#$ . 201257))
#@110 Find an inline transfer compress command that works.
Goes through the list `tramp-inline-compress-commands'.
(defalias 'tramp-find-inline-compress #[(vec) "\212\306\307	!\310\211\211\211\203$\n\204$\311\312\215\210\202\n\203^	\313\314\fC\310\315\316\217\210,\317\320\f#\210	\313\321C\310\322\323\217\210,\317\324#\202}\317\320\310#\210\317\324\310#\210	\325\326\310\310\327\330\217,.\207" [tramp-inline-compress-commands vec found decompress compress item "xyzzy" tramp-get-connection-process nil next (byte-code "\211A@\211@	A@\f\306\307\nD\310\311\312\217\210,\313\314\315\316>\203.\317\202/\320\n$\310\211#!\204@\321\322\310\"\210\f\306\323\nD\310\324\325\217\210,\326\f\315\320\n$\327#\204f\321\322\310\"\210\327\310\207" [commands item compress decompress vec args 5 "Checking local compress command `%s', `%s' for sanity" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) zerop tramp-call-local-coding-command format (windows-nt) "echo %s | \"%s\" | \"%s\"" "echo %s | %s | %s" throw next "Checking remote compress command `%s', `%s' for sanity" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-send-command-and-check t fmt-string level vec-or-proc system-type magic found] 8) 5 "Using inline transfer compress command `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-set-connection-property "inline-compress" "Using inline transfer decompress command `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "inline-decompress" 2 "Couldn't find an inline transfer compress command" (byte-code "	X\205}\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\205|\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\205|\326!\205|\311\327\330\331\"\fP
$*\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) p magic commands args fmt-string level vec-or-proc] 7 (#$ . 201598)])
#@90 Expands VEC according to `tramp-default-proxies-alist'.
Gateway hops are already opened.
(defalias 'tramp-compute-multi-hops #[(vec) "C\306!\206	\307\310\211\311\312\f>\313#!\310\211?\203\205?@\314!\315!@	AQBC\316\317B;\205C\320B!C;\205M\320C!	EDEFG\310\321\322\217\210,\323\324B;\205i\320B!C;\205s\320C!	E\"\210\325	!+?A\211?\204!*\f\203\225H\203\225\326\324\"\210\n\203&\n\211A@\327\3308!\331\327@!\206\261\307\315
@!\206\271\307\"\203\230\331\327A@!\206\307\307\314
@!\206\317\307\"\203\230	\204\335\310\211\202\231\332	\333\334\314
@!\206\351\307\335\315
@!\206\362\307$\"\325	!I\336I!J\314I!K\315I!L\337I!M\306I!N\323\305I\"\210.\202\230\331\340\341OP#\336
@!\"\203\271
\211A@
\211A@QR\342Q!\204\214\343\344QCDE,G\310SG\345\346\347,\211\350N\351\340ED#E!CDEFG\310\352\353\217\210,\354,\351\340ED#C\"\210-\323\305\355\336Q!\314Q!\356\357!\204\243\360\357!\205\252\357RQ#\310\211%\"\210\361
@\307\362Q$\210*
A\203!
\n\203!\n\211A@\363\336!\364\"\203\334\363\336!\365\"\203\300\343\366\336!CDE,G\310SG\345\346\347,\211\350N\351\340ED#E!CDEFG\310\367\370\217\210,\354,\351\340ED#C\"\210-\202\300
@T\336T!U\315T!B
A\204\215\371\363U\372\"\235\204\215\331VB\"\204\215T\343\373BUDDE,G\310SG\345\346\347,\211\350N\351\340ED#E!CDEFG\310\374\375\217\210,\354,\351\340ED#C\"\210-+
-\207" [vec proxy choices item hops target-alist tramp-file-name-hop #1="" nil reverse split-string omit tramp-file-name-user tramp-file-name-host 5 "Add proxy (\"%s\" \"%s\" \"%s\")" regexp-quote (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) add-to-list tramp-default-proxies-alist tramp-dissect-file-name customize-save-variable eval 2 string-match format-spec format-spec-make 117 104 tramp-file-name-method tramp-file-name-localname format "^\\(%s\\|%s\\)$" tramp-file-name-port file-error "Connection `%s' is not supported for gateway access." 1 "%s" error-message-string error-message apply (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) signal vector subrp tramp-gw-open-connection functionp tramp-set-file-property "gateway" tramp-get-method-parameter tramp-login-program tramp-copy-program "Method `%s' is not supported for multi-hops." (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) ("%h") tramp-login-args "Host `%s' looks like a remote host, `%s' can only use the local host" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-postfix-hop-regexp --dolist-tail-- tramp-prefix-format tramp-postfix-host-format host user args fmt-string level vec-or-proc tramp-save-ad-hoc-proxies l l-method l-user l-host l-localname l-hop tramp-gw-tunnel-method tramp-gw-socks-method hop gw tramp-message-show-message v method tramp-local-host-regexp] 11 (#$ . 206308)])
#@28 Last connection timestamp.
(defvar tramp-current-connection nil (#$ . 211546))
#@163 Maybe open a connection VEC.
Does not do anything if a connection is already open, but re-opens the
connection if a previous connection has died for some reason.
(defalias 'tramp-maybe-open-connection #[(vec) "\300\301\215\207" [uname-changed (byte-code "\306!\307\310\311#\312	!r\313!q\210`)\211\203)\314\f!\203)\315\f!\316>\204E\317\320\311\"!
@\232\203E\321\322 
A\"\323V\204E\324\325\211\"\210\311\326\327\217\210\330\331\332\217,\207" [vec process-environment pos process-name p tramp-current-connection tramp-get-connection-process tramp-get-connection-property "process-name" nil copy-sequence tramp-get-connection-buffer processp process-status (run open) butlast append tramp-time-diff current-time 5 throw suppress (byte-code "\306\307 \310\311\312#\"\313V\203g\203g\314!\203g\315!\316>\203g\317	\320\321\211$\210\315!\322>\2036\323\324\"\204g	\325\326\327\327 
\330\331\332\f\211\333N\334\335\n#E!C!\327\336\337\217\210,\304\f\334\335\n#C\"\210-\327\207" [p vec args fmt-string signal vec-or-proc tramp-time-diff current-time tramp-get-connection-property "last-cmd-time" (0 0 0) 60 processp process-status (run open) tramp-send-command "echo are you awake" t (run open) tramp-wait-for-output 10 file-error "Awake did fail" nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-message-show-message level] 10) ((file-error (byte-code "\302!\210\303\211\207" [vec p tramp-cleanup nil] 3))) err (byte-code "\205\306!\205\307!\310>?\205\311	!\210\312\313!\203'\313J\203'\314\313\211\"\210\315\211	\316\317\320\321	!G!\203C\322\323\324	!\325	!#\202O\322\326\321	!\324	!\325	!$C@A\315\327\330\217\210,B\203tC\203t\316D\316^X\203t\315\331\332\217\210\333\216B\205}\n?B\203\215\306!\203\215\334!\210\335\336E\"\210\335\337\340\"\210\335\341!\210\335\342F\"\210\343	!GHI\315\211JK\315L\312\344!\203\303\345\344\346N@!\2068\347\350!\203\332\351\350!\204\325\352\350!\2058\350 \2028\353\354!\211M\205\347\355M!)\203\363\356\353\354!!\2028\353\357!\211M\205\355M!)\203\f\356\353\357!!\2028\353\360!\211M\205\355M!)\203%\356\353\360!!\2028\361\362!\2031\356\362!\2028\363\364!\210\356\365!)N\366\367\370	!\371	!O\203PPOD\202SPC$)\372\373	#\210\374\375\"\210\376\315\"\210\377\201n	\315\"!\201o BQ\201p R	\201q\201r\201s\201t\201u!\201v#C@A\315\201w\201x\217\210,\201y\201z\201{P$\210G\203G@S\325S!T\321S!U\324S!V\315W\201|T\201}\"X\201|T\201~\"Y\201|T\201\"Z\201|T\201\200\"[\201\201S\201\202\201\203\315$\211\\\205\325\\!]\\\205\321\\!^\\\205*\201\204\\!_X`\372\201\205\201\206\201\207a\315L\312\344!\203O\345\344\346N@!\206\304\347\350!\203f\351\350!\204a\352\350!\205\304\350 \202\304\353\354!\211M\205s\355M!)\203\356\353\354!!\202\304\353\357!\211M\205\214\355M!)\203\230\356\353\357!!\202\304\353\360!\211M\205\245\355M!)\203\261\356\353\360!!\202\304\361\362!\203\275\356\362!\202\304\363\364!\210\356\365!)\"!#b\315\211cde\203\344Z\203\344\201nZY\"Y\\\203\370[\203\370\201n[Y\"Y\201\210fV\"\203\201\211\201\212V\"W\201\211\201\213V\"Vg\315h\211i\203Bi@h\201\210hR\"\2039\201\214diA\211i\204$*]\206JTj^\206SUk_\206\\VRV\206f\201\202VU\206p\201\202UW\206z\201\202W\201\215\201\216V\201\217U\201\220W\201\221b&cd?\205\240\201\222`\201v\201s\201\223Y\201v#d\205\271\201\224\260`	\316\201\225`C@A\315\201\226\201\227\217\210,\201\230	`\201\214\211$\210\201\231	lm\201z%\210	\316\201\232VC@A\315\201\233\201\234\217\210.GA\211G\204\265\201\235	\".	\207" [p vec tm pr args fmt-string processp process-status (run open) tramp-get-buffer boundp non-essential throw nil 3 "%s..." zerop tramp-file-name-user format #5="Opening connection for %s using %s" tramp-file-name-host tramp-file-name-method #6="Opening connection for %s@%s using %s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) (byte-code "\303\304!\204\f\305\304!\205/\304\306\307!G!\203\"\310\311\312!\313!#\202.\310\314\307!\312!\313!$!\211\205:\315\316\317\320	$\303\207" [vec pr tm subrp make-progress-reporter functionp zerop tramp-file-name-user format #5# tramp-file-name-host tramp-file-name-method #6# run-at-time 3 0.1 tramp-progress-reporter-update] 8) ((error)) ((byte-code "\203\306\307!\204\310\307!\203\307!\210	\311\312\313\314	!G!\203,\315\316\317	!\320	!#\2028\315\321\314	!\317	!\320	!$C\322\323\324\217\210,\322\207" [tm vec args fmt-string level vec-or-proc subrp cancel-timer functionp 3 "%s...done" zerop tramp-file-name-user format #5# tramp-file-name-host tramp-file-name-method #6# nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error))] 9)) delete-process setenv "TERM" "LC_ALL" "C" "PROMPT_COMMAND" "PS1" tramp-compute-multi-hops temporary-file-directory eval standard-value fboundp temp-directory subrp functionp getenv "TEMP" file-directory-p file-name-as-directory "TMP" "TMPDIR" file-exists-p "c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is defined -- using /tmp." "/tmp" apply start-process tramp-get-connection-name tramp-get-connection-buffer tramp-set-connection-property "vector" set-process-sentinel tramp-process-sentinel tramp-compat-set-process-query-on-exit-flag butlast level vec-or-proc tramp-message-show-progress-reporter-message tramp-message-show-message tramp-verbose tramp-terminal-type tramp-initial-end-of-output target-alist tramp-process-connection-type process-connection-type process-adaptive-read-buffering coding-system-for-read file-name-handler-alist d default-directory tramp-encoding-command-interactive tramp-encoding-shell tramp-current-connection tramp-current-host hop l-method l-user l-host l-port login-program login-args async-args gw-args gw g-method g-user g-host command tramp-temp-name-prefix tmpfile spec r-shell process-name tramp-host-with-port-regexp tramp-restricted-shell-hosts-alist elt --dolist-tail-- tramp-current-method tramp-current-user pos tramp-actions-before-shell append current-time system-name 6 "%s" mapconcat identity process-command " " (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-barf-if-no-shell-prompt 60 "Couldn't find local shell prompt %s" tramp-get-method-parameter tramp-login-program tramp-login-args tramp-async-args tramp-gw-args tramp-get-file-property #1# "gateway" tramp-file-name-real-host "temp-file" make-temp-name expand-file-name string-match match-string 2 1 t format-spec-make 104 117 112 116 "exec " #[(x) "\301\302\"\303\235?\205\304\305\306#\207" [x mapcar #[(y) "\302	\"\207" [y spec format-spec] 3] #1# mapconcat identity " "] 4] " && exit || exit" "Sending command `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-send-command tramp-process-actions "Found remote shell prompt on `%s'" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) tramp-open-connection-setup-interactive-shell] 10) ((quit (byte-code "\302!\210\303	@	A\"\207" [vec err tramp-cleanup signal] 3)))] 6)] 2 (#$ . 211632)])
#@284 Send the COMMAND to connection VEC.
Erases temporary buffer before sending the command.  If optional
arg NEVEROPEN is non-nil, never try to open the connection.  This
is meant to be used from `tramp-maybe-open-connection' only.  The
function waits for output unless NOOUTPUT is set.
(defalias 'tramp-send-command #[(vec command &optional neveropen nooutput) "\204\306	!\210\307	!\310\n\311\312#\203!\313\n\314\315#\210\316\317\f$\320\321\f\"\2035\310	\322\312#\2045\323\f\324Q	\325\326\fC\312\327\330\217\210,\331	\f\"\210?\205U\332\n!)\207" [neveropen vec p tramp-echo-mark command args tramp-maybe-open-connection tramp-get-connection-process tramp-get-connection-property "remote-echo" nil tramp-set-connection-property "check-remote-echo" t format "%s%s%s" string-match "<<'EOF'" "busybox" "(PS1= ; " "\n)" 6 "%s" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-string tramp-wait-for-output fmt-string level vec-or-proc nooutput] 5 (#$ . 222388)])
#@38 Wait for output from remote command.
(defalias 'tramp-wait-for-output #[(proc &optional timeout) "\306\307!!\204=\310!\210\311\312C\313\f\314\315\316\211\317N\320\321\n	#E!C#\313\322\323\217\210,\303\320\321\n	#C\"\210-r\307!q\210\321\324\325$!\"%\321\326%\"&\327'&#\211(\203\210\313)eb\210\330\331\332 \333#\203v\314y\210e`|\210db\210\334%\313\333#\210`d|\210)\202\366'\203\304\311\335$'D\313\f\314\315\316\211\317N\320\321\n	#E!C#\313\336\337\217\210,\303\320\321\n	#C\"\210-\202\366\311\340$C\313\f\314\315\316\211\317N\320\321\n	#E!C#\313\341\342\217\210,\303\320\321\n	#C\"\210-(,\207" [proc args fmt-string signal vec-or-proc tramp-message-show-message buffer-live-p process-buffer delete-process file-error "Process `%s' not available, try again" nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) "[^#$\n]*%s
?$" regexp-quote "\\(^\\|\\)%s" tramp-wait-for-regexp re-search-forward "^\\(.\\)+$" point-at-eol t re-search-backward "[[Remote prompt `%s' not found in %d secs]]" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) "[[Remote prompt `%s' not found]]" (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) level tramp-end-of-output regexp regexp1 timeout found buffer-read-only] 11 (#$ . 223991)])
#@368 Run COMMAND and check its exit status.
Sends `echo $?' along with the COMMAND for checking the exit status.  If
COMMAND is nil, just sends `echo $?'.  Returns the exit status found.

If the optional argument SUBSHELL is non-nil, the command is
executed in a subshell, ie surrounded by parentheses.  If
DONT-SUPPRESS-ERR is non-nil, stderr won't be sent to /dev/null.
(defalias 'tramp-send-command-and-check #[(vec command &optional subshell dont-suppress-err) "\306	\203\n\307\202\310\n\211\203\203\311\202\312\202\310\313	\203&\314\202'\310\260\"\210r\315!q\210db\210\316\317\320\321#\204t\322\323\nC!\320\"!\324\325\326\211\327N\330\331
\f#E!C#!\320\332\333\217\210,\334\330\331
\f#C\"\210-\335\320w\210\336\337p!!\320$\340\224d|\210*\207" [vec subshell command dont-suppress-err args fmt-string tramp-send-command "( " #1="" "; " " 2>/dev/null; " "echo tramp_exit_status $?" " )" tramp-get-connection-buffer re-search-backward "tramp_exit_status [0-9]+" nil t file-error "Couldn't find exit status of `%s'" 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) signal "^ " zerop read 0 vec-or-proc tramp-message-show-message level buffer-read-only] 10 (#$ . 227135)])
#@185 Run COMMAND, check exit status, throw error if exit status not okay.
Similar to `tramp-send-command-and-check' but accepts two more arguments
FMT and ARGS which are passed to `error'.
(defalias 'tramp-barf-unless-okay #[(vec command fmt &rest args) "\304	\"\206\305\306\307\n%\207" [vec command fmt args tramp-send-command-and-check apply tramp-error file-error] 6 (#$ . 229011)])
#@151 Run COMMAND and return the output, which must be a Lisp expression.
In case there is no valid Lisp expression and NOERROR is nil, it
raises an error.
(defalias 'tramp-send-command-and-read #[(vec command &optional noerror) "\203\303	\n\"\202\304	\n\305\n$\205\"r\306	!q\210eb\210\307\310\311\217)\207" [noerror vec command tramp-send-command-and-check tramp-barf-unless-okay "`%s' returns with error" tramp-get-connection-buffer nil (byte-code "\300p!\301\302\303 \304#\203\305\306!\210\207" [read re-search-forward "\\S-" point-at-eol t error nil] 5) ((error (byte-code "?\205;	\306\307\n\310 D\311\312\313\314
\211\315N\316\317\f#E!C\311\320\321\217\210,\305
\316\317\f#C\"-\207" [noerror vec command args fmt-string signal file-error "`%s' does not return a valid Lisp expression: `%s'" buffer-string nil 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) vec-or-proc tramp-message-show-message level] 10)))] 5 (#$ . 229404)])
#@147 Convert `file-attributes' ATTR generated by perl script, stat or ls.
Convert file mode bits to string and set virtual device number.
Return ATTR.
(defalias 'tramp-convert-file-attributes #[(vec attr) "\205\253@;\203\304	@\"\203\305\306\307\211@$\240\210\202\n\3108\247\2034\3108\311W\2034AA\312\240\210\313\3108!\203Y\3108\314\315!\203J\315J\202K\316X\203YAA\317\3108!\240\210\3208\247\203n\3208\311W\203n\320\233\312\240\210\313\3208!\203\223\3208\314\315!\203\204\315J\202\205\316X\203\223\320\233\317\3208!\240\210\3218<\204\256\321\233\322\3218\323\"\322\324\3218\323\"!D\240\210\3258<\204\311\325\233\322\3258\323\"\322\324\3258\323\"!D\240\210\3268<\204\344\326\233\322\3268\323\"\322\324\3268\323\"!D\240\210\3278\311W\203\362\327\233\312\240\210\313\3278!\203\3278\314\315!\203\315J\202	\316X\203\327\233\317\3278!\240\210\3308;\2045\330\233\331\3308!\240\210@;\2035\3308\311\332I\210\304\333\3308\"\203B\334\240\210@:\203q\211@@);\203m\304\335\211@@)\"\203m\336\337\211@@)\"\240\210\202q\307\240\210\340\233\3208\247\203\207\3208\341\342\"U?\202\220\3208\341\343\"\230?\240\210\3448<\204\242\344\233\307\345\346\217\240\210\347\233\350!\240\210\207" [attr tramp-color-escape-sequence-regexp x vec string-match replace-match "" nil 2 0 -1 floatp boundp most-positive-fixnum 134217727 round 3 4 floor 65536 mod 5 6 7 8 tramp-file-mode-from-int 108 "^d" t ".+ -> .\\(.+\\)." match-string 1 9 tramp-get-remote-gid integer string 10 (byte-code "\301\3028\303\"\301\304\3028\303\"!B\207" [attr floor 10 65536 mod] 5) ((error (tramp-get-inode vec))) 11 tramp-get-device] 7 (#$ . 231033)])
#@119 Check `file-attributes' caches for VEC.
Return t if according to the cache access type ACCESS is known to
be granted.
(defalias 'tramp-check-cached-permissions #[(vec access) "\306\307=\203\310\202\311=\203\312\202\313=\205\314\315\306\211\203\235\f@\n\206\225\316
\317
!\320P\306$\321
\322P\306#\321
\323P\306#\211\205\224@\324=\204^@?\205\224\3258	\326\\H=\206\224\3258	H=\203\200\3128\232\206\224\3258	\314\\H=\205\224\3148\232+\fA\211\204&\306\n,\207" [access offset result suffix --dolist-tail-- vec nil 114 1 119 2 120 3 ("string" "integer") tramp-get-file-property tramp-file-name-localname "file-attributes-" tramp-get-connection-property "uid-" "gid-" t 8 6 remote-gid remote-uid file-attr] 7 (#$ . 232736)])
#@69 Turn an integer representing a file mode into an ls(1)-like string.
(defalias 'tramp-file-mode-from-int #[(mode) "\306\307\310\311\"\312\"	\"A\307\310\313\"\314\"\307\310\315\"\314\"\307\310\316\"\314\"\307\310\317\"\320\"\316V\307\310\317\"\321\"\316V\307\310\317\"\322\"\316V\323\f\324#\323\324#\323
\n\325#
R.\207" [mode tramp-file-mode-type-map sticky sgid suid other assoc logand lsh -12 15 -6 7 -3 0 -9 4 2 1 tramp-file-mode-permissions "s" "t" group user type] 10 (#$ . 233521)])
#@99 Convert a permission bitset into a string.
This is used internally by `tramp-file-mode-from-int'.
(defalias 'tramp-file-mode-permissions #[(perm suid suid-text) "\306\307\"\310V\306\311\"\310V\306\312\"\310V\211\203\313\202\314\n\203&\315\202'\314\f\2033	\2033
\206E\f\203<
\226\206E	\203D\316\202E\314Q+\207" [perm x w r suid suid-text logand 4 0 2 1 "r" "-" "w" "x"] 6 (#$ . 234048)])
#@59 Converts STRING to shell glob pattern which ignores case.
(defalias 'tramp-shell-case-fold #[(string) "\301\302\303#\207" [string mapconcat #[(c) "\227\226\232\203\f\301!\207\302\303\227\226#\207" [c vector format "[%c%c]"] 4] ""] 4 (#$ . 234460)])
#@67 Create a file name suitable to be passed to `rcp' and workalikes.
(defalias 'tramp-make-copy-program-file-name #[(vec) "\304!\305!\306\307!!\310G!\204\311\312\n	$\202#\311\313\n	#+\207" [vec localname host user tramp-file-name-user tramp-file-name-real-host tramp-shell-quote-argument tramp-file-name-localname zerop format "%s@%s:%s" "%s:%s"] 5 (#$ . 234722)])
#@59 Return t if this is an out-of-band method, nil otherwise.
(defalias 'tramp-method-out-of-band-p #[(vec size) "\303\304!\305\"\205	\247\205\n?\206	\nV\206\306\307	#?\207" [vec size tramp-copy-size-limit tramp-get-method-parameter tramp-file-name-method tramp-copy-program tramp-get-inline-coding "remote-encoding"] 4 (#$ . 235101)])
(defalias 'tramp-get-remote-path #[(vec) "\306\307>\203
\310	!\202	\311\312#\211\312=\203\271\313!\314>\307>\f\205D\315	\316\317#\206D	\320\321\322C !\"\323\324\325\217\210,\322#
\205N\323\326\327\217$\f\203e\f\330\331#\332\"\fA\"\241\210\333\314\"
\203z
\330\331$\332\"
A\"\241\210\333\307\"\211:\203\236\f@\203\227\f@\fA\235\211\203\227
\323\240\210\202\201\fA\211\202}\333\323\334\335\"\"-\336\307>\203\264\310	!\202\265	\311\n#\210\n)\207" [tramp-remote-path vec value remote-path elt1 elt2 tramp-get-connection-property tramp-own-remote-path tramp-get-connection-process "remote-path" undef copy-tree tramp-default-remote-path tramp-send-command-and-read "echo \\\"`getconf PATH 2>/dev/null`\\\"" noerror 3 "`getconf PATH' not successful, using default value \"%s\"." "/bin:/usr/bin" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) (tramp-send-command-and-read vec "echo \\\"$PATH\\\"") ((error (byte-code "\305\306\307\307\310\311\217\210,\307\207" [vec args fmt-string level vec-or-proc 3 "$PATH not set, ignoring `tramp-own-remote-path'." nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error))] 4))) append tramp-compat-split-string ":" delq mapcar #[(x) ";\205\302\303\304	!\305	!\306	!$!\205\207" [x vec file-directory-p tramp-make-tramp-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host] 6] tramp-set-connection-property args fmt-string level vec-or-proc default-remote-path own-remote-path] 6])
(defalias 'tramp-get-ls-command #[(vec) "\306\307\310#\211\310=\203Y\311\312\313\313\314\315\217\210,\316\317\215\206R\320\321\313\313
\322\323\324\211\325N\326\327\n#E!C\313\330\331\217\210,\332\326\327\n#C\"-\333\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "ls" undef 5 "Finding a suitable `ls' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) ls-found (byte-code "\305\306\211\205N	@\307\n!\306\211\203E\310\n\f\311\211%\211\203E\312\n\313\314\"\"\203>\312\n\313\315\"\"\2039\316P\317\320\"\210\fA\211\204*	A\211\204\306*\207" [cmd --dolist-tail-- vec result dl ("ls" "gnuls" "gls") nil tramp-get-remote-path tramp-find-executable t tramp-send-command-and-check format "%s -lnd /" "%s --color=never -al /dev/null" " --color=never" throw ls-found] 7) file-error "Couldn't find a proper `ls' command" 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) signal tramp-set-connection-property tramp-message-show-message] 11])
(defalias 'tramp-get-ls-command-with-dired #[(vec) "\306 \307\216\310	\311\312#\211\312=\2030	\313\314\315\315\316\317\217\210,\320	\321\322\323	!\"\"\324	\311\n#\210\n+\207" [save-match-data-internal vec value args fmt-string level match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) tramp-get-connection-property "ls-dired" undef 5 "Checking, whether `ls --dired' works" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command-and-check format "%s --dired -al /dev/null" tramp-get-ls-command tramp-set-connection-property vec-or-proc] 7])
(defalias 'tramp-get-test-command #[(vec) "\306\307\310#\211\310=\2033\311\312\313\313\314\315\217\210,\316\317\"\203%\307\202,\320\307\321!#\322\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "test" undef 5 "Finding a suitable `test' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-send-command-and-check "test 0" tramp-find-executable tramp-get-remote-path tramp-set-connection-property] 6])
(defalias 'tramp-get-test-nt-command #[(vec) "\303\304\305#\211\305=\203C\306\307\310\311!\"\"\210r\312!q\210eb\210\313\314\n!!\205-\307\315\311!\")\206<\306\307\316\311!\"\"\210\317\320\304	#\210	)\207" [vec value tramp-end-of-output tramp-get-connection-property "test-nt" undef tramp-send-command format "( %s / -nt / )" tramp-get-test-command tramp-get-buffer looking-at regexp-quote "%s %%s -nt %%s" "tramp_test_nt () {\n%s -n \"`find $1 -prune -newer $2 -print`\"\n}" "tramp_test_nt %s %s" tramp-set-connection-property] 7])
(defalias 'tramp-get-file-exists-command #[(vec) "\306\307\310#\211\310=\203$\311\312\313\313\314\315\217\210,\316!\317\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "file-exists" undef 5 "Finding command to check if file exists" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-find-file-exists-command tramp-set-connection-property] 5])
(defalias 'tramp-get-remote-ln #[(vec) "\306\307\310#\211\310=\203(\311\312\313\313\314\315\217\210,\316\307\317!#\320\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "ln" undef 5 "Finding a suitable `ln' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-find-executable tramp-get-remote-path tramp-set-connection-property] 6])
(defalias 'tramp-get-remote-perl #[(vec) "\306\307\310#\211\310=\203w\311\312\313\313\314\315\217\210,\316\317\320!#\206+\316\307\320!#\211\203m\306\321\310#\211\310=\203L\322\323\324\"\"\325\321	#\210	\210)\306\326\310#\211\310=\203j\322\323\327\"\"\325\326	#\210	\210))\325\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "perl" undef 5 "Finding a suitable `perl' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-find-executable "perl5" tramp-get-remote-path "perl-file-spec" tramp-send-command-and-check format "%s -e 'use File::Spec;'" tramp-set-connection-property "perl-cwd-realpath" "%s -e 'use Cwd \"realpath\";'" result] 6])
(defalias 'tramp-get-remote-stat #[(vec) "\306\307\310#\211\310=\203c\311\312\313\313\314\315\217\210,\316\307\317!#\313\211\203Y\320\321\322\"\323#\211<\203V@;\203V\324\325@\"\203V\211A@)\250\204Y\313*\326\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "stat" undef 5 "Finding a suitable `stat' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-find-executable tramp-get-remote-path tramp-send-command-and-read format "%s -c '(\"%%N\" %%s)' /" noerror string-match "^./.$" tramp-set-connection-property tmp result x] 6])
(defalias 'tramp-get-remote-readlink #[(vec) "\306\307\310#\211\310=\203<\311\312\313\313\314\315\217\210,\316\307\317!#\211\2054\320\321\322\"\"\2054)\323\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "readlink" undef 5 "Finding a suitable `readlink' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-find-executable tramp-get-remote-path tramp-send-command-and-check format "%s --canonicalize-missing /" tramp-set-connection-property result] 6])
(defalias 'tramp-get-remote-trash #[(vec) "\306\307\310#\211\310=\203(\311\312\313\313\314\315\217\210,\316\307\317!#\320\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "trash" undef 5 "Finding a suitable `trash' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 "" 1 2 "Warning: " "Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format "(%d) # " vec-or-proc default-directory] 6) ((error)) tramp-find-executable tramp-get-remote-path tramp-set-connection-property] 6])
(defalias 'tramp-get-remote-id #[(vec) "\306\307\310#\211\310=\203Y\311\312\313\313\314\315\217\210,\316\317\215\206R\320\321\313\313
\322\323\324\211\325N\326\327\n#E!C\313\330\331\217\210,\332\326\327\n#C\"-\333\307	#\210	)\207" [vec value args fmt-string level vec-or-proc tramp-get-connection-property "id" undef 5 "Finding POSIX `id' command" nil (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1="" 1 2 #2="Warning: " #3="Tramp: " 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4="(%d) # " vec-or-proc default-directory] 6) ((error)) id-found (byte-code "\303!\304\211\205-\305\306\n\307\211%\211\205-\310\311\312	\"\"\203%\313\314	\"\210\nA\211\204\n\304*\207" [vec result dl tramp-get-remote-path nil tramp-find-executable "id" t tramp-send-command-and-check format "%s -u" throw id-found] 7) file-error "Couldn't find a POSIX `id' command" 1 "%s" error-message-string error-message apply format (byte-code "	X\203~\306 \307\216\203;\310X\203;\311\312\313U\203!\314\2026\315U\203+\314\2026\316U\2035\317\2026\320\fP
#\210	\321Y\203}\203d\322!\203d\323\324!!\203dr\324!q\210\325!)\203}\326!\203}\311\327\330\331\"\fP
$\210*\306\207" [level tramp-verbose save-match-data-internal tramp-message-show-message fmt-string args match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) 3 apply message 0 #1# 1 2 #2# #3# 4 processp buffer-name process-buffer tramp-dissect-file-name vectorp tramp-debug-message format #4# vec-or-proc default-directory] 6) ((error)) signal tramp-set-connection-property tramp-message-show-message] 11])
(defalias 'tramp-get-remote-uid #[(vec id-format) "\304\305\306	\"\307#\211\307=\203J\310\305\311\312!	\313\232\203 \314\202!\315	\313\232\203+\314\202,\316$\"	\313\232\203>\250\204>\317\202?)\320\305\306	\"\n#\210\n)\207" [vec id-format value res tramp-get-connection-property format "uid-%s" undef tramp-send-command-and-read "%s -u%s %s" tramp-get-remote-id integer "" "n" "| sed -e s/^/\\\"/ -e s/$/\\\"/" -1 tramp-set-connection-property] 9])
(defalias 'tramp-get-remote-gid #[(vec id-format) "\304\305\306	\"\307#\211\307=\203J\310\305\311\312!	\313\232\203 \314\202!\315	\313\232\203+\314\202,\316$\"	\313\232\203>\250\204>\317\202?)\320\305\306	\"\n#\210\n)\207" [vec id-format value res tramp-get-connection-property format "gid-%s" undef tramp-send-command-and-read "%s -g%s %s" tramp-get-remote-id integer "" "n" "| sed -e s/^/\\\"/ -e s/$/\\\"/" -1 tramp-set-connection-property] 9])
(defalias 'tramp-get-local-uid #[(id-format) "\301\232\203	\302 \207\303 \207" [id-format integer user-uid user-login-name] 2])
(defalias 'tramp-get-local-gid #[(id-format) "\301\302\303\"8\207" [id-format 3 tramp-compat-file-attributes "~/"] 4])
#@208 Return the compress command related to PROP.
PROP is either `inline-compress' or `inline-decompress'. SIZE is
the length of the file to be compressed.

If no corresponding command is found, nil is returned.
(defalias 'tramp-get-inline-compress #[(vec prop size) "\250\205/	V\205/\305\306\n!\307#\211\307=\203-\310\n!\210\305\306\n!\311#\312\306\n!\f#\210\f)\207" [tramp-inline-compress-start-size size vec prop value tramp-get-connection-property tramp-get-connection-process undef tramp-find-inline-compress nil tramp-set-connection-property] 5 (#$ . 253418)])
#@467 Return the coding command related to PROP.
PROP is either `remote-encoding', `remote-decoding',
`local-encoding' or `local-decoding'.

SIZE is the length of the file to be coded.  Depending on SIZE,
compression might be applied.

If no corresponding command is found, nil is returned.
Otherwise, either a string is returned which contains a `%s' mark
to be used for the respective input or output file; or a Lisp
function cell is returned to be applied on a buffer.
(defalias 'tramp-get-inline-coding #[(vec prop size) "\300\301\302\217\207" [nil (byte-code "\306\307!	\310#\211\310=\203\"\311!\210\306\307!	\312#\313\307!	\n#\210\n)\314\315	\"\203/\316\2020\317\312\211\203i
9\203i\314\320	\"\203i\321
!6\314\3226\"\203]\323\324\312\3256$6\202I\326
J6#\2106)
\205 \327\f7#\211\203\302
9\203\302\314\330\f\"\203\243\331\332
\333B\334\335\336\337\340\341\342\343DD\325\211\312\344\343DD\257	EF\202 \331\345\334\346\336\347\350\351\342\343DD\325\211\312\344\343DD\257	E
\352BF\202 
9\203\313
\202 \203\360\314\353	\"\203\360\354\314\355	\"\203\3518\356>\203\351\357\202\352\360
#\202 \203\354\314\355	\"\2038\361>\203\362\202\363
#\202 \314\353	\"\203\354\364
\"\202 \354\365
\"+\207" [vec prop value compress prop1 coding tramp-get-connection-property tramp-get-connection-process undef tramp-find-inline-encoding nil tramp-set-connection-property string-match "encoding" "inline-compress" "inline-decompress" "remote" symbol-name "-" replace-match "_" t tramp-maybe-send-script tramp-get-inline-compress "decompress" lambda (beg end) (beg end) let ((coding-system-for-write 'binary) (coding-system-for-read 'binary)) apply 'call-process-region (point-min) (point-max) car split-string cdr (beg end) ((coding-system-for-write 'binary) (coding-system-for-read 'binary)) 'call-process-region beg end ((point-min) (point-max)) "decoding" format "local" (windows-nt) "(%s | \"%s\" >%%s)" "(%s | %s >%%s)" (windows-nt) "(%s <%%s | \"%s\")" "(%s <%%s | %s)" "%s >%%s" "%s <%%s" name size system-type] 17) ((error))] 3 (#$ . 253997)])
#@76 Set `eshell-path-env' to $PATH of the host related to `default-directory'.
(defalias 'tramp-eshell-directory-change #[nil "\306!\203+\307!\310	!\311	!\312	!\313	!\314	!\315\316\317	!\320#.\202.\321\322!\211\207" [default-directory v method user host localname file-remote-p tramp-dissect-file-name tramp-file-name-method tramp-file-name-user tramp-file-name-host tramp-file-name-localname tramp-file-name-hop mapconcat identity tramp-get-remote-path ":" getenv "PATH" hop eshell-path-env] 4 (#$ . 256094)])
(byte-code "\300\301\302\"\210\303\304\305\"\210\306\307!\207" [eval-after-load "esh-util" (progn (tramp-eshell-directory-change) (add-hook 'eshell-directory-change-hook 'tramp-eshell-directory-change) (add-hook 'tramp-unload-hook (lambda nil (remove-hook 'eshell-directory-change-hook 'tramp-eshell-directory-change)))) add-hook tramp-unload-hook #[nil "\300\301\302\"\207" [unload-feature tramp-sh force] 3] provide tramp-sh] 3)

MMCT - 2023