From unknown Wed Jun 18 23:06:21 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#26313 <26313@debbugs.gnu.org> To: bug#26313 <26313@debbugs.gnu.org> Subject: Status: 25.1; completion: display-sort-function=identity shows reverse Reply-To: bug#26313 <26313@debbugs.gnu.org> Date: Thu, 19 Jun 2025 06:06:21 +0000 retitle 26313 25.1; completion: display-sort-function=3Didentity shows reve= rse reassign 26313 emacs submitter 26313 Kyle Meyer severity 26313 minor tag 26313 fixed thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Mar 30 14:35:05 2017 Received: (at submit) by debbugs.gnu.org; 30 Mar 2017 18:35:05 +0000 Received: from localhost ([127.0.0.1]:53175 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cteuW-00021S-Cp for submit@debbugs.gnu.org; Thu, 30 Mar 2017 14:35:05 -0400 Received: from eggs.gnu.org ([208.118.235.92]:59955) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cteuU-00020u-08 for submit@debbugs.gnu.org; Thu, 30 Mar 2017 14:35:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cteuN-0008P5-LP for submit@debbugs.gnu.org; Thu, 30 Mar 2017 14:34:56 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:45041) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cteuN-0008P1-Hr for submit@debbugs.gnu.org; Thu, 30 Mar 2017 14:34:55 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50920) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cteuM-0005v4-3t for bug-gnu-emacs@gnu.org; Thu, 30 Mar 2017 14:34:55 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cteuI-0008N6-78 for bug-gnu-emacs@gnu.org; Thu, 30 Mar 2017 14:34:54 -0400 Received: from pb-smtp2.pobox.com ([64.147.108.71]:52667 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cteuI-0008MR-1w for bug-gnu-emacs@gnu.org; Thu, 30 Mar 2017 14:34:50 -0400 Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 989AA6D67D for ; Thu, 30 Mar 2017 14:34:48 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to :subject:date:message-id:mime-version:content-type; s=sasl; bh=R WZI0kCD8UvMuXq1Y1u6vl6CjW0=; b=guRfRtW0hPzGCNtBzkXcvptOUTAaIkvee I0WqrZ0LXuIy3MdNQTJtrZFOaXHEIbqgJXifwzBYCsShbZX3Z0pjZ729HKTeBI50 QbmMZZC7vyMCRCZq37+XavLHR+zzRjr2TklM2WsVNnbPDsz2TpUY3qY3IGqG5HDu yFj6xfqdHI= Received: from pb-smtp2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 902616D67C for ; Thu, 30 Mar 2017 14:34:48 -0400 (EDT) Received: from localhost (unknown [24.60.167.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pb-smtp2.pobox.com (Postfix) with ESMTPSA id 130876D67B for ; Thu, 30 Mar 2017 14:34:48 -0400 (EDT) From: Kyle Meyer To: bug-gnu-emacs@gnu.org Subject: 25.1; completion: display-sort-function=identity shows reverse Date: Thu, 30 Mar 2017 14:34:47 -0400 Message-ID: <87lgrm7gvs.fsf@kyleam.com> MIME-Version: 1.0 Content-Type: text/plain X-Pobox-Relay-ID: 8DB5E052-1577-11E7-B12F-FC50AE2156B6-24757444!pb-smtp2.pobox.com DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=kyleam.com; h=from:to:subject:date:message-id:mime-version:content-type; s=mesmtp; bh=RWZI0kCD8UvMuXq1Y1u6vl6CjW0=; b=onGeu/vPN4HdgZDi7VYT0XxNb8DWwcTZ7KTt7QELJkuw+qqV5qoVoy0JZ4xySS8qI9UA0fMmCReJ34hrzATOA1VHaJj687FyR0/syHXwZvRS8ahsKiRedFtV29cu+JxGyr4MN/2aK2UUJGRgvEcyUv0H11iFECNhiCtyItg1NUM= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) I'm trying to make the *Completions* help buffer display the collection in the original order passed to completing-read. I found a question about this on Emacs StackExchange [*1*], and Stefan's advice was to specify display-sort-function for the completion table. (defun my-presorted-completion-table (completions) (lambda (string pred action) (if (eq action 'metadata) `(metadata (display-sort-function . ,#'identity)) (complete-with-action action completions string pred)))) (completing-read "test: " (my-presorted-completion-table '("d" "e" "a" "r"))) Hitting tab to bring up the help buffer shows that this does override the default alphabetical sorting, but it displays the list in reverse, with "r" as the first item [*2*]. Replacing "identity" with "nreverse" shows the list in the expected order. It seems that the collection needs to be reversed to get the original order because completion-pcm--all-completions returns the items in reverse, constructing the list with "(dolist _ (push ...))". However, using nreverse for the display-sort-function messes up the order displayed for partial completions because completion-pcm--all-completions returns the result of all-completions rather than following the "dolist" path described above. For example, (completing-read "test: " (my-presorted-completion-table '("db" "dd" "da" "e" "a" "r"))) with "d" now shows "da dd db" instead of "db dd da". Should completion-pcm--all-completions reverse the list before returning it? With identity as the display-sort-function, this change appears to give the correct order for both cases above (empty input and partial input). --8<---------------cut here---------------start------------->8--- diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index 355d2ee6af..2e2c55db5e 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -2994,7 +2994,7 @@ completion-pcm--all-completions (let ((poss ())) (dolist (c compl) (when (string-match-p regex c) (push c poss))) - poss))))) + (nreverse poss)))))) (defun completion-pcm--hilit-commonality (pattern completions) (when completions --8<---------------cut here---------------end--------------->8--- [*1*] http://emacs.stackexchange.com/questions/8115/make-completing-read-respect-sorting-order-of-a-collection/8177#8177 [*2*] Evaluated in a buffer visited with "emacs -Q", Emacs 25.1.1 -- Kyle From debbugs-submit-bounces@debbugs.gnu.org Thu Mar 30 15:03:18 2017 Received: (at 26313) by debbugs.gnu.org; 30 Mar 2017 19:03:18 +0000 Received: from localhost ([127.0.0.1]:53197 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ctfLp-0002kb-Qe for submit@debbugs.gnu.org; Thu, 30 Mar 2017 15:03:17 -0400 Received: from mail-oi0-f53.google.com ([209.85.218.53]:33011) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ctfLo-0002kH-5i for 26313@debbugs.gnu.org; Thu, 30 Mar 2017 15:03:16 -0400 Received: by mail-oi0-f53.google.com with SMTP id b187so40464434oif.0 for <26313@debbugs.gnu.org>; Thu, 30 Mar 2017 12:03:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=xAPk2e0zJYFafNMdWXAFSW7dfdXcLJLmZDtDpexxNcY=; b=Fb8J02LA8A7bpKQVqiQHj/AOUdX+/ndxi4rY/GbYasSLsWF7Vlv2xfWeiNwN2+emNs L1cOKSFNAS5HQAjvsRVFzWXGHj+DL9DjL3pX/w29ZtY5JSR25D43fV/jiQpFllYIpL3L RvSZWb2RDp7OqmZNMbAHNOIIEncFYtUqmuQZR3S1FHSPcGpJzQCsY/GdmBAr3+ccyEv7 Q/5jXGy9VJ+u0LP6i6UWT2dsCN6aIOL28VUnOY9Vaz9ysb5/Lw9eiNvbQLJJyte+7woe JjNLfeGsLucKyjch4lKYYTHbU3FOVl8hykKjLhZevAJDAsuQ4AqsoMRJ40M7xvga4jfJ Q/3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=xAPk2e0zJYFafNMdWXAFSW7dfdXcLJLmZDtDpexxNcY=; b=apk0JZqWfkg1JS8Gc83wWXzHd4b3/V1H/Sb3ZALWzPibrORzzaFdLfKEjfmTEWQTXb mrG7y0xjC7OugCnafe1g9aoTrUJAfE+IavjrYhmKZsvnKR6TzeUr8swUiNrGRQL+WfRi yyGV2DLCMc5MOb2TOyJLREXIpYvHlToEilG90ezILvun3FZF8WF9r2vCtVxly4xg8QQn XFoBtEL+kab3WBNWqLhhVfOHOzcB5A5q6jzpsGc6jF5s945twnDKVv1XeucrHrqnFJvv 5Jx8+ZuQa5R4Cluz2pA4ZnSwl9zWoL+BI2KMxjo358mla4Ie9rIxUnz4gfZGzP/l5ujY wENg== X-Gm-Message-State: AFeK/H3Iq+94hvVLCReMpfxnDil4w55Bnfq2SRfGI2wTolnmNBT/qj6oK/EJdbGnqO9+st9n7OVCAGrlDk9bUQ== X-Received: by 10.157.1.22 with SMTP id 22mr864722otu.221.1490900590349; Thu, 30 Mar 2017 12:03:10 -0700 (PDT) MIME-Version: 1.0 Received: by 10.157.80.133 with HTTP; Thu, 30 Mar 2017 12:03:09 -0700 (PDT) In-Reply-To: <87lgrm7gvs.fsf@kyleam.com> References: <87lgrm7gvs.fsf@kyleam.com> From: Noam Postavsky Date: Thu, 30 Mar 2017 15:03:09 -0400 X-Google-Sender-Auth: MuAMoAOiuG239FM9y7goUKE4UkQ Message-ID: Subject: Re: bug#26313: 25.1; completion: display-sort-function=identity shows reverse To: Kyle Meyer Content-Type: text/plain; charset=UTF-8 X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 26313 Cc: 26313@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.7 (/) forcemerge 24676 26313 quit On Thu, Mar 30, 2017 at 2:34 PM, Kyle Meyer wrote: > > Should completion-pcm--all-completions reverse the list before returning > it? Yeah, it was suggested and approved in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24676#11, but never installed. Also related, completion-pcm--filename-try-filter has the same problem: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25995#8 From debbugs-submit-bounces@debbugs.gnu.org Thu Mar 30 15:21:08 2017 Received: (at 26313) by debbugs.gnu.org; 30 Mar 2017 19:21:08 +0000 Received: from localhost ([127.0.0.1]:53219 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ctfd6-0004vm-Fq for submit@debbugs.gnu.org; Thu, 30 Mar 2017 15:21:08 -0400 Received: from pb-smtp2.pobox.com ([64.147.108.71]:62512 helo=sasl.smtp.pobox.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ctfd4-0004ve-Oi for 26313@debbugs.gnu.org; Thu, 30 Mar 2017 15:21:07 -0400 Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 801A56DF16; Thu, 30 Mar 2017 15:21:05 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:in-reply-to:references:date:message-id:mime-version :content-type; s=sasl; bh=65hKR+qg6XgNgInrEFLSbodTmeo=; b=n8jUYH GGzGp3i+Zq9T2HgLNFfSHfnpm5+BYCheJ8n3fPk8QPVYRbkp5ruvH/i+lEdRSVB6 HLhiPG2ovW7SGyNrZu0y5xvd0FNjK6RBRhXj/M18NLA06V0OcV+cYBZt2/ohobS2 NZVd2BUfIK7C1kAaouM/mrIaUD0zDC9cn51j8= Received: from pb-smtp2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 791DE6DF15; Thu, 30 Mar 2017 15:21:05 -0400 (EDT) Received: from localhost (unknown [24.60.167.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pb-smtp2.pobox.com (Postfix) with ESMTPSA id DD6FC6DF14; Thu, 30 Mar 2017 15:21:04 -0400 (EDT) From: Kyle Meyer To: Noam Postavsky Subject: Re: bug#26313: 25.1; completion: display-sort-function=identity shows reverse In-Reply-To: References: <87lgrm7gvs.fsf@kyleam.com> Date: Thu, 30 Mar 2017 15:21:04 -0400 Message-ID: <87h92a7eqn.fsf@kyleam.com> MIME-Version: 1.0 Content-Type: text/plain X-Pobox-Relay-ID: 04D44D26-157E-11E7-92FB-FC50AE2156B6-24757444!pb-smtp2.pobox.com DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=kyleam.com; h=from:to:cc:subject:in-reply-to:references:date:message-id:mime-version:content-type; s=mesmtp; bh=65hKR+qg6XgNgInrEFLSbodTmeo=; b=ScjIhtHrPd7b8hh8eSxGpRDvzuUOIWq3W+13UNxuJ1D+X+pQc5mR6FSlTokZE23M3iBTCxzobTfz6UXT1IeVHwT0TLhbGWTot01PZSfcrDnm1rcyBwBJ/Ss6ZqAg9l3Tefk/HkKbZ74SLmb/DkBIqKUJrEfpu95x4UJkD+1iSBA= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 26313 Cc: 26313@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Noam Postavsky writes: > On Thu, Mar 30, 2017 at 2:34 PM, Kyle Meyer wrote: >> >> Should completion-pcm--all-completions reverse the list before returning >> it? > > Yeah, it was suggested and approved in > https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24676#11, but never > installed. Thanks. Sorry for missing that report. -- Kyle From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 20 22:49:17 2017 Received: (at control) by debbugs.gnu.org; 21 Jun 2017 02:49:17 +0000 Received: from localhost ([127.0.0.1]:58701 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dNVhk-00023m-PC for submit@debbugs.gnu.org; Tue, 20 Jun 2017 22:49:16 -0400 Received: from mail-it0-f68.google.com ([209.85.214.68]:33915) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dNVhj-00023W-SC; Tue, 20 Jun 2017 22:49:16 -0400 Received: by mail-it0-f68.google.com with SMTP id y134so4998166itc.1; Tue, 20 Jun 2017 19:49:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=T7vsp+GuE9Sag+GMCNtjZksZhddx6CLBwWb2kDQMm+0=; b=JWR3KnjgP9mtoImX4AggJbXa4RN9npklh7pEbtBPoKg7I0o6mikhgRRKmZMPu64bZb njYremh6zXZHLRt4HMq8p8p6xV1YGwPj0kvtZazTOYnxwkk1NQfbQojfYuOukX4DT+vP /aww64j9hOFq97rGPB3PhaYPR8RTuhHYHW+l3u3NnFWeA+gsg2uNKjzl6u6HxB+GZxC/ D3wjzvKI6LyQ+f6zQKPZFaK/gLn9E5uPyu0vS5cNNqW89VxaajGkAbR3+G1qdxnkhGGf BEX2AUwypLC25CppBgsofhzjXsPMO5zEc5aOwPbOFYLZ16l4qrypqLUigUuoF8Sn+pNU K3QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=T7vsp+GuE9Sag+GMCNtjZksZhddx6CLBwWb2kDQMm+0=; b=X6wCj9fXCUmNsALErtlkWXV3URBVRiJhLURIJXwSTP4VmXpSk3OqCaHlbLX5BVqGJz l4t1tSThdmlbBo0f9cEtIHw3xdpdNHg/AqX0nXEpPAgmmnkUuZzvqZ5t9DacY8atYBVH xPiivsoJQpkRh9GLsbAJrbszf1GT/Ly2M7fMsSV5NaEqPc9b90bh3zK0DuakKhJNPorD 0fRxpgp3a1yC7zghZrLVBFhLHduFjkDATuv736M0QVHSfeCMR5Rbcon2QzgbryKQYJrK 0Vxo30Tj+1OM3umRk+WZxklWN9xcbEsns9GpswyvKm7DMiykiKvRCtYoK+aPZ524tqRg u//A== X-Gm-Message-State: AKS2vOwBAcyBO3y7Bpu5GKurQshhlwJpyAEJQD/ne26/K3K6Py0tQFuh RIvhkUJgZa8evVdr X-Received: by 10.36.121.216 with SMTP id z207mr6523114itc.86.1498013350049; Tue, 20 Jun 2017 19:49:10 -0700 (PDT) Received: from zony ([45.2.7.65]) by smtp.googlemail.com with ESMTPSA id 86sm318298ioj.8.2017.06.20.19.49.09 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 20 Jun 2017 19:49:09 -0700 (PDT) From: npostavs@users.sourceforge.net To: Dmitry Gutov Subject: Re: bug#25995: 26.0.50; Mismatch between documented and actual behaviour of icomplete References: <87a88yveuj.fsf@debian> <87shmm823i.fsf@users.sourceforge.net> <93815f6a-22a9-f8b5-2583-5b8bd9906d48@yandex.ru> <87injsr6yz.fsf@users.sourceforge.net> Date: Tue, 20 Jun 2017 22:50:45 -0400 In-Reply-To: (Dmitry Gutov's message of "Wed, 21 Jun 2017 05:04:51 +0300") Message-ID: <87d19yqcje.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: control Cc: 25995@debbugs.gnu.org, Alexis X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) tags 25995 fixed close 25995 26.1 tags 24676 fixed close 24676 26.1 quit Dmitry Gutov writes: > When running it interactively, however (M-x eval-buffer, also starting > with 'emacs -Q'), I'm getting consistently opposite results: Ah, you're measuring interpreted code which will penalize the open-coded loop more than the `cl-delete-if' call which has the loop tucked away (and compiled). > In any case, nreverse barely affects the runtime, so please go ahead > and push the patch. Thanks! Pushed to master [1: 1ed2086a03], also fixes the same issue for `completion-pcm--all-completions' (Bug#24676). [1: 1ed2086a03]: 2017-06-20 22:44:24 -0400 Keep order of completion candidates (Bug#25995, Bug#24676) http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=1ed2086a03a5f33482d2f184e57dad9e6a9d25d8 From unknown Wed Jun 18 23:06:21 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 19 Jul 2017 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator