(List (Com {[LIT_CHARS set]} {[LIT_CHARS -eo]} {[LIT_CHARS pipefail]}) (Com {[LIT_CHARS shopt]} {[LIT_CHARS -s]} {[LIT_CHARS nullglob]}) (= scope= flags=1 words=[] bindings=[('DOKKU_ROOT', {[VarSub DOKKU_ROOT test_op=VS_TEST_COLON_EQUALS {[LIT_CHARS "~dokku"]}]})]) (AndOr OP_AND_IF (DBracket {B1 UNARY_FILE_f {[VarSub DOKKU_ROOT] [LIT_CHARS /dokkurc]}}) (Com {[LIT_CHARS source]} {[DQ [VarSub DOKKU_ROOT][LIT_CHARS /dokkurc]]}) ) (AndOr OP_AND_IF (DBracket {B1 UNARY_FILE_d {[VarSub DOKKU_ROOT] [LIT_CHARS /.dokkurc]}}) (For f [{[VarSub DOKKU_ROOT] [LIT_CHARS /.dokkurc/] [LIT_OTHER "*"]}]) (Com {[LIT_CHARS source]} {[DQ [VarSub f]]}) ) ) (AndOr OP_AND_IF (DBracket {B1 UNARY_STRING_n {[VarSub DOKKU_TRACE]}}) (Com {[LIT_CHARS set]} {[LIT_CHARS -x]}) ) (Case to_match={[DQ [ComSub (Com {[LIT_CHARS lsb_release]} {[LIT_CHARS -si]})]]}, pat_word_list=[[{[LIT_CHARS Arch]}], [{[LIT_CHARS Debian]}], [{[LIT_OTHER "*"]}]] (= scope= flags=1 words=[] bindings=[('DOKKU_DISTRO', {[VarSub DOKKU_DISTRO test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS arch]]}]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_DISTRO', {[VarSub DOKKU_DISTRO test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS debian]]}]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_DISTRO', {[VarSub DOKKU_DISTRO test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS ubuntu]]}]})]) ) (= scope= flags=1 words=[] bindings=[('DOKKU_IMAGE', {[VarSub DOKKU_IMAGE test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS gliderlabs/herokuish]]}]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_LIB_ROOT', {[VarSub DOKKU_LIB_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS /var/lib/dokku]]}]})]) (= scope= flags=1 words=[] bindings=[('PLUGIN_PATH', {[VarSub PLUGIN_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub DOKKU_LIB_ROOT][LIT_CHARS /plugins]]}]})]) (= scope= flags=1 words=[] bindings=[('PLUGIN_AVAILABLE_PATH', {[VarSub PLUGIN_AVAILABLE_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub PLUGIN_PATH][LIT_CHARS /available]]}]})]) (= scope= flags=1 words=[] bindings=[('PLUGIN_ENABLED_PATH', {[VarSub PLUGIN_ENABLED_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub PLUGIN_PATH][LIT_CHARS /enabled]]}]})]) (= scope= flags=1 words=[] bindings=[('PLUGIN_CORE_PATH', {[VarSub PLUGIN_CORE_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub DOKKU_LIB_ROOT][LIT_CHARS /core-plugins]]}]})]) (= scope= flags=1 words=[] bindings=[('PLUGIN_CORE_AVAILABLE_PATH', {[VarSub PLUGIN_CORE_AVAILABLE_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub PLUGIN_CORE_PATH][LIT_CHARS /available]]}]})]) (= scope= flags=1 words=[] bindings=[('PLUGIN_CORE_ENABLED_PATH', {[VarSub PLUGIN_CORE_ENABLED_PATH test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub PLUGIN_CORE_PATH][LIT_CHARS /enabled]]}]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_API_VERSION', {[LIT_CHARS 1]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_NOT_IMPLEMENTED_EXIT', {[LIT_CHARS 10]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_VALID_EXIT', {[LIT_CHARS 0]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_LOGS_DIR', {[VarSub DOKKU_LOGS_DIR test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS /var/log/dokku]]}]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_EVENTS_LOGFILE', {[VarSub DOKKU_EVENTS_LOGFILE test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub DOKKU_LOGS_DIR][LIT_CHARS /events.log]]}]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_CONTAINER_LABEL', {[LIT_CHARS dokku]})]) (= scope= flags=1 words=[] bindings=[('DOKKU_GLOBAL_RUN_ARGS', {[DQ [LIT_CHARS "--label="][VarSub DOKKU_CONTAINER_LABEL]]})]) (Com {[LIT_CHARS source]} {[DQ [VarSub PLUGIN_CORE_AVAILABLE_PATH][LIT_CHARS /common/functions]]}) (Com {[LIT_CHARS parse_args]} {[DQ [VarSub @]]}) (= scope= flags=0 words=[] bindings=[('args', {[Array {[DQ [VarSub @]]}]})]) (If (DBracket {B2 BINARY_STRING_TILDE_EQUAL {[DQ [VarSub args bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}})]]} {[LIT_OTHER "^"] [LIT_CHARS --.] [LIT_OTHER "*"]}}) (For arg [{[DQ [VarSub @]]}]) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub arg]]} {[DQ [LIT_CHARS --app]]}}) (Com {[LIT_CHARS shift]} {[LIT_CHARS 2]}) (DBracket {B2 BINARY_STRING_TILDE_EQUAL {[DQ [VarSub arg]]} {[LIT_OTHER "^"] [LIT_CHARS --.] [LIT_OTHER "*"]}}) (Com {[LIT_CHARS shift]} {[LIT_CHARS 1]}) (ElseTrue) (Com {[LIT_CHARS break]}) ) ) ) (AndOr OP_AND_IF (Pipeline! (Com {[LIT_CHARS has_tty]}) ) (= scope= flags=0 words=[] bindings=[('DOKKU_QUIET_OUTPUT', {[LIT_CHARS 1]})]) ) (If (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_NOT_EQUAL {[ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -un]})]} {[DQ [LIT_CHARS dokku]]}}) (AndOr OP_AND_IF (DBracket {B! {B2 BINARY_STRING_TILDE_EQUAL {[VarSub 1]} {[LIT_CHARS plugin] [LIT_OTHER ":"] [LIT_OTHER "*"]}}}) (DBracket {B! {B2 BINARY_STRING_EQUAL {[VarSub 1]} {[DQ [LIT_CHARS "ssh-keys:add"]]}}}) ) ) (List (= scope= flags=1 words=[] bindings=[('SSH_USER', {[ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -un]})]})]) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -u]} {[LIT_CHARS dokku]} {[LIT_CHARS -E]} {[LIT_CHARS -H]} {[DQ [VarSub 0]]} {[DQ [VarSub @]]}) (Com {[LIT_CHARS exit]} {[VarSub ?]}) ) ) (If (AndOr OP_OR_IF (DBracket {B? LOGICAL_BINARY_AND {B2 BINARY_STRING_NOT_EQUAL {[ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -un]})]} {[DQ [LIT_CHARS root]]}} {B2 BINARY_STRING_TILDE_EQUAL {[VarSub 1]} {[LIT_OTHER "^"] [LIT_CHARS plugin] [LIT_OTHER ":"] [LIT_CHARS .] [LIT_OTHER "*"]}}}) (DBracket {B? LOGICAL_BINARY_AND {B2 BINARY_STRING_NOT_EQUAL {[ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -un]})]} {[DQ [LIT_CHARS root]]}} {B2 BINARY_STRING_EQUAL {[VarSub 1]} {[DQ [LIT_CHARS "ssh-keys:add"]]}}}) ) (Com {[LIT_CHARS dokku_log_fail]} {[DQ [LIT_CHARS "This command must be run as root"]]}) ) (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub SSH_ORIGINAL_COMMAND]]}}) (List (= scope= flags=1 words=[{[LIT_CHARS -n]}, {[LIT_CHARS SSH_ORIGINAL_COMMAND]}] bindings=[]) (If (AndOr OP_OR_IF (DBracket {B2 BINARY_STRING_TILDE_EQUAL {[VarSub 1]} {[LIT_CHARS config-] [LIT_OTHER "*"]}}) (DBracket {B2 BINARY_STRING_TILDE_EQUAL {[VarSub 1]} {[LIT_CHARS docker-options] [LIT_OTHER "*"]}}) ) (List (Com {[LIT_CHARS xargs]} {[VarSub 0]} < (HereWordRedirectNode here_word={[VarSub SSH_ORIGINAL_COMMAND]} 0), > ) (Com {[LIT_CHARS exit]} {[VarSub ?]}) ) (ElseTrue) (List (Com {[LIT_CHARS set]} {[LIT_CHARS -f]}) (Com {[VarSub 0]} {[VarSub SSH_ORIGINAL_COMMAND]}) (Com {[LIT_CHARS set]} {[LIT_OTHER "+"] [LIT_CHARS f]}) (Com {[LIT_CHARS exit]} {[VarSub ?]}) ) ) ) ) (If (Pipeline! (Com {[LIT_CHARS dokku_auth]} {[DQ [VarSub @]]}) ) (List (Com {[LIT_CHARS dokku_log_fail]} {[DQ [LIT_CHARS "Access denied"]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (FunctionDef execute_dokku_cmd [] (List (= scope= flags=0 words=[] bindings=[('desc', {[DQ [LIT_CHARS "executes dokku sub-commands"]]})]) (= scope= flags=0 words=[] bindings=[('PLUGIN_NAME', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('PLUGIN_CMD', {[VarSub PLUGIN_NAME]})]) (= scope= flags=0 words=[] bindings=[('implemented', {[LIT_CHARS 0]})]) (= scope= flags=0 words=[{[LIT_CHARS script]}] bindings=[]) (= scope= flags=0 words=[] bindings=[('argv', {[Array {[DQ [VarSub @]]}]})]) (Case to_match={[DQ [VarSub PLUGIN_NAME]]}, pat_word_list=[[{[LIT_CHARS events]}, {[LIT_CHARS events] [LIT_OTHER ":"] [LIT_OTHER "*"]}], [{[LIT_CHARS nginx]}, {[LIT_CHARS nginx] [LIT_OTHER ":"] [LIT_OTHER "*"]}], [{[LIT_CHARS deploy]}, {[LIT_CHARS delete]}, {[LIT_CHARS ls]}, {[LIT_CHARS run]}, {[LIT_CHARS cleanup]}], [{[LIT_CHARS trace]}, {[LIT_CHARS url]}, {[LIT_CHARS urls]}, {[LIT_CHARS report]}, {[LIT_CHARS version]}]] (= scope= flags=0 words=[] bindings=[('PLUGIN_NAME', {[VarSub PLUGIN_NAME transform_ops=[PatSub {[LIT_CHARS events]} {[LIT_CHARS 20_events]}]]})]) (= scope= flags=0 words=[] bindings=[('PLUGIN_NAME', {[VarSub PLUGIN_NAME transform_ops=[PatSub {[LIT_CHARS nginx]} {[LIT_CHARS nginx-vhosts]}]]})]) (= scope= flags=0 words=[] bindings=[('PLUGIN_NAME', {[DQ [LIT_CHARS 00_dokku-standard]]})]) (= scope= flags=0 words=[] bindings=[('PLUGIN_NAME', {[DQ [LIT_CHARS 00_dokku-standard]]})]) ) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [ComSub (Com {[LIT_CHARS readlink]} {[LIT_CHARS -f]} {[DQ [VarSub PLUGIN_ENABLED_PATH][LIT_CHARS /][VarSub PLUGIN_NAME transform_ops=[VS_UNARY_DPERCENT {[LIT_CHARS ":*"]}]]]})]]} {[LIT_OTHER "*"] [LIT_CHARS core-plugins] [LIT_OTHER "*"]}}) (List (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_EQUAL {[VarSub argv bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}})]} {[DQ [VarSub PLUGIN_CMD]]}}) (Com {[LIT_CHARS shift]} {[LIT_CHARS 1]}) ) (If (DBracket {B! {B1 UNARY_STRING_z {[VarSub DOKKU_APP_NAME]}}}) (If (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub PLUGIN_CMD]]} {[LIT_CHARS config] [LIT_OTHER "*"]}}) (DBracket {B2 BINARY_STRING_EQUAL {[VarSub argv bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}})]} {[DQ [LIT_CHARS --no-restart]]}}) ) (List (Com {[LIT_CHARS shift]} {[LIT_CHARS 1]}) (Com {[LIT_CHARS set]} {[LIT_CHARS --]} {[DQ [LIT_CHARS --no-restart]]} {[DQ [VarSub DOKKU_APP_NAME]]} {[DQ [VarSub @]]}) ) (ElseTrue) (Com {[LIT_CHARS set]} {[LIT_CHARS --]} {[DQ [VarSub DOKKU_APP_NAME]]} {[DQ [VarSub @]]}) ) ) (Com {[LIT_CHARS set]} {[LIT_CHARS --]} {[DQ [VarSub PLUGIN_CMD]]} {[DQ [VarSub @]]}) ) ) (If (DBracket {B1 UNARY_FILE_x {[VarSub PLUGIN_ENABLED_PATH] [LIT_CHARS /] [VarSub PLUGIN_NAME] [LIT_CHARS /subcommands/default]}}) (List (Com {[DQ [VarSub PLUGIN_ENABLED_PATH][LIT_CHARS /][VarSub PLUGIN_NAME][LIT_CHARS /subcommands/default]]} {[DQ [VarSub @]]}) (= scope= flags=0 words=[] bindings=[('implemented', {[LIT_CHARS 1]})]) ) (DBracket {B1 UNARY_FILE_x {[VarSub PLUGIN_ENABLED_PATH] [LIT_CHARS /] [VarSub PLUGIN_NAME] [LIT_CHARS /subcommands/] [VarSub PLUGIN_CMD]}}) (List (Com {[DQ [VarSub PLUGIN_ENABLED_PATH][LIT_CHARS /][VarSub PLUGIN_NAME][LIT_CHARS /subcommands/][VarSub PLUGIN_CMD]]} {[DQ [VarSub @]]}) (= scope= flags=0 words=[] bindings=[('implemented', {[LIT_CHARS 1]})]) ) (DBracket {B1 UNARY_FILE_x {[VarSub PLUGIN_ENABLED_PATH] [LIT_CHARS /] [VarSub PLUGIN_NAME transform_ops=[VS_UNARY_DPERCENT {[LIT_CHARS ":*"]}]] [LIT_CHARS /subcommands/] [VarSub 1 transform_ops=[VS_UNARY_POUND {[LIT_CHARS "*:"]}]]}}) (List (Com {[DQ [VarSub PLUGIN_ENABLED_PATH][LIT_CHARS /][VarSub PLUGIN_NAME transform_ops=[VS_UNARY_DPERCENT {[LIT_CHARS ":*"]}]][LIT_CHARS /subcommands/][VarSub 1 transform_ops=[VS_UNARY_POUND {[LIT_CHARS "*:"]}]]]} {[DQ [VarSub @]]}) (= scope= flags=0 words=[] bindings=[('implemented', {[LIT_CHARS 1]})]) ) ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub implemented]} {[LIT_CHARS 0]}}) (For script [{[VarSub PLUGIN_ENABLED_PATH] [LIT_CHARS /] [LIT_OTHER "*"] [LIT_CHARS /commands]}]) (List (Com {[LIT_CHARS set]} {[LIT_OTHER "+"] [LIT_CHARS e]}) (Com {[VarSub script]} {[DQ [VarSub @]]}) (= scope= flags=0 words=[] bindings=[('exit_code', {[VarSub ?]})]) (Com {[LIT_CHARS set]} {[LIT_CHARS -e]}) (If (DBracket {B2 BINARY_INT_EQ {[DQ [VarSub exit_code]]} {[DQ [VarSub DOKKU_NOT_IMPLEMENTED_EXIT]]}}) (Com {[LIT_CHARS continue]}) ) (= scope= flags=0 words=[] bindings=[('implemented', {[LIT_CHARS 1]})]) (If (DBracket {B2 BINARY_INT_NE {[DQ [VarSub exit_code]]} {[DQ [VarSub DOKKU_VALID_EXIT]]}}) (Com {[LIT_CHARS exit]} {[VarSub exit_code]}) ) ) ) ) (If (DBracket {B2 BINARY_INT_EQ {[DQ [VarSub implemented]]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS dokku_log_warn]} {[DQ [\ LIT_ESCAPED_CHAR "\\`"][VarSub *][\ LIT_ESCAPED_CHAR "\\`"][LIT_CHARS " is not a dokku command."]]}) (Com {[LIT_CHARS dokku_log_warn]} {[DQ [LIT_CHARS "See "][\ LIT_ESCAPED_CHAR "\\`"][LIT_CHARS "dokku help"][\ LIT_ESCAPED_CHAR "\\`"][LIT_CHARS " for a list of available commands."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) ) ) (Case to_match={[DQ [VarSub 1]]}, pat_word_list=[[{[LIT_CHARS help]}, {[SQ ]}], [{[LIT_OTHER "*"]}]] (List (= scope= flags=1 words=[] bindings=[('LC_ALL', {[LIT_CHARS C]})]) (= scope= flags=0 words=[] bindings=[('ALL_PLUGIN_COMMANDS', {[ComSub (AndOr OP_OR_IF (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS find]} {[LIT_CHARS -L]} {[DQ [VarSub PLUGIN_PATH][LIT_CHARS /enabled]]} {[LIT_CHARS -name]} {[LIT_CHARS commands]}) (Com {[LIT_CHARS true]}) )]})]) (For plugin_command [{[VarSub ALL_PLUGIN_COMMANDS]}]) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [ComSub (Com {[LIT_CHARS readlink]} {[LIT_CHARS -f]} {[DQ [VarSub plugin_command]]})]]} {[LIT_OTHER "*"] [LIT_CHARS core-plugins] [LIT_OTHER "*"]}}) (= scope= flags=0 words=[] bindings=[('CORE_PLUGIN_COMMANDS+', {[DQ [VarSub plugin_command][LIT_CHARS " "]]})]) ) ) (For plugin_command [{[VarSub ALL_PLUGIN_COMMANDS]}]) (If (DBracket {B2 BINARY_STRING_NOT_EQUAL {[DQ [ComSub (Com {[LIT_CHARS readlink]} {[LIT_CHARS -f]} {[DQ [VarSub plugin_command]]})]]} {[LIT_OTHER "*"] [LIT_CHARS core-plugins] [LIT_OTHER "*"]}}) (= scope= flags=0 words=[] bindings=[('COMMUNITY_PLUGIN_COMMANDS+', {[DQ [VarSub plugin_command][LIT_CHARS " "]]})]) ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Usage: dokku [--quiet|--trace|--rm-container|--rm|--force] COMMAND [command-specific-options]"]]}) (Com {[LIT_CHARS echo]} {[DQ ]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Primary help options, type "][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS "dokku COMMAND:help"][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS " for more details, or dokku help --all to see all commands."]]}) (Com {[LIT_CHARS echo]} {[DQ ]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Commands:"]]}) (Com {[LIT_CHARS echo]} {[DQ ]}) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub 2]]} {[DQ [LIT_CHARS --all]]}}) (List (Pipeline (For core_plugin_command [{[VarSub CORE_PLUGIN_COMMANDS]}]) (Com {[VarSub core_plugin_command]} {[LIT_CHARS help]}) ) (Com {[LIT_CHARS sort]}) (Com {[LIT_CHARS column]} {[LIT_CHARS -c2]} {[LIT_CHARS -t]} {[LIT_CHARS -s] [LIT_COMMA ","]}) ) (Com {[LIT_CHARS echo]} {[DQ ]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Community plugin commands:"]]}) (Com {[LIT_CHARS echo]} {[DQ ]}) (Pipeline (For community_plugin_command [{[VarSub COMMUNITY_PLUGIN_COMMANDS]}]) (Com {[VarSub community_plugin_command]} {[LIT_CHARS help]}) ) (Com {[LIT_CHARS sort]}) (Com {[LIT_CHARS column]} {[LIT_CHARS -c2]} {[LIT_CHARS -t]} {[LIT_CHARS -s] [LIT_COMMA ","]}) ) ) (ElseTrue) (List (Pipeline (For core_plugin_command [{[VarSub CORE_PLUGIN_COMMANDS]}]) (Com {[VarSub core_plugin_command]} {[LIT_CHARS help]}) ) (Com {[LIT_CHARS sort]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[SQ ]} {[LIT_CHARS -e]} {[SQ ]}) (Com {[LIT_CHARS column]} {[LIT_CHARS -c2]} {[LIT_CHARS -t]} {[LIT_CHARS -s] [LIT_COMMA ","]}) ) (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub COMMUNITY_PLUGIN_COMMANDS]]}}) (List (Com {[LIT_CHARS echo]} {[DQ ]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Community plugin commands:"]]}) (Com {[LIT_CHARS echo]} {[DQ ]}) (Pipeline (For community_plugin_command [{[VarSub COMMUNITY_PLUGIN_COMMANDS]}]) (Com {[VarSub community_plugin_command]} {[LIT_CHARS help]}) ) (Com {[LIT_CHARS sort]}) (Com {[LIT_CHARS column]} {[LIT_CHARS -c2]} {[LIT_CHARS -t]} {[LIT_CHARS -s] [LIT_COMMA ","]}) ) ) ) ) ) ) (Com {[LIT_CHARS execute_dokku_cmd]} {[DQ [VarSub @]]}) ) )