Lookups: sub-path for dsearch
[exim.git] / test / stderr / 5410
index 8e65e3febf8ec6fbb01e1ac7309c8bb15a46e143..dd25241b27185f7a5987904de08e8d93ddeb1abd 100644 (file)
@@ -4,19 +4,35 @@ environment after trimming:
 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
 configuration file is TESTSUITE/test-config
 admin user
 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
 configuration file is TESTSUITE/test-config
 admin user
+try option gecos_pattern
+try option gecos_name
+try option unknown_login
+try option smtp_active_hostname
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
- ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
- ├considering:  ESMTP Exim $version_number $tod_full
- ├───────text:  ESMTP Exim 
- ├considering: $version_number $tod_full
- ├considering:  $tod_full
- ├───────text:  
+try option message_size_limit
+try option acl_smtp_connect
+try option smtp_banner
+ ╭considering: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full
+ ├──────value: myhost.test.ex
+ ├considering: ░ESMTP░Exim░$version_number░$tod_full
+ ├───────text: ░ESMTP░Exim░
+ ├considering: $version_number░$tod_full
+ ├──────value: x.yz
+ ├considering: ░$tod_full
+ ├───────text: ░
  ├considering: $tod_full
  ├considering: $tod_full
- ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
- ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ ├──────value: Tue,░2░Mar░1999░09:44:33░+0000
+ ├───expanded: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full
+ ╰─────result: myhost.test.ex░ESMTP░Exim░x.yz░Tue,░2░Mar░1999░09:44:33░+0000
+try option acl_smtp_helo
+ list element: *
+  in limits_advertise_hosts? yes (matched "*")
  in dsn_advertise_hosts? no (option unset)
  in dsn_advertise_hosts? no (option unset)
+try option acl_smtp_etrn
+try option acl_smtp_vrfy
+try option acl_smtp_expn
  in pipelining_advertise_hosts?
  list element: *
   in pipelining_advertise_hosts? yes (matched "*")
  in pipelining_advertise_hosts?
  list element: *
   in pipelining_advertise_hosts? yes (matched "*")
@@ -24,77 +40,100 @@ LOG: smtp_connection MAIN
  in chunking_advertise_hosts? no (end of list)
  list element: *
   in tls_advertise_hosts? yes (matched "*")
  in chunking_advertise_hosts? no (end of list)
  list element: *
   in tls_advertise_hosts? yes (matched "*")
- ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
+try option acl_smtp_mail
+try option acl_smtp_rcpt
+ ╭considering: ${if░eq░{SERVER}{server}{queue}{cutthrough}}
   ╭considering: SERVER}{server}{queue}{cutthrough}}
   ├───────text: SERVER
   ├considering: }{server}{queue}{cutthrough}}
   ╭considering: SERVER}{server}{queue}{cutthrough}}
   ├───────text: SERVER
   ├considering: }{server}{queue}{cutthrough}}
-  ├──expanding: SERVER
+  ├───expanded: SERVER
   ╰─────result: SERVER
   ╭considering: server}{queue}{cutthrough}}
   ├───────text: server
   ├considering: }{queue}{cutthrough}}
   ╰─────result: SERVER
   ╭considering: server}{queue}{cutthrough}}
   ├───────text: server
   ├considering: }{queue}{cutthrough}}
-  ├──expanding: server
+  ├───expanded: server
   ╰─────result: server
   ╰─────result: server
- ├──condition: eq {SERVER}{server}
+ ├──condition: eq{SERVER}{server}
  ├─────result: false
   ╭───scanning: queue}{cutthrough}}
   ├───────text: queue
   ├───scanning: }{cutthrough}}
  ├─────result: false
   ╭───scanning: queue}{cutthrough}}
   ├───────text: queue
   ├───scanning: }{cutthrough}}
-  ├──expanding: queue
-  ├─────result: queue
+  ├───expanded: queue
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╭considering: cutthrough}}
   ├───────text: cutthrough
   ├considering: }}
   ╰───skipping: result is not used
   ╭considering: cutthrough}}
   ├───────text: cutthrough
   ├considering: }}
-  ├──expanding: cutthrough
+  ├───expanded: cutthrough
   ╰─────result: cutthrough
   ╰─────result: cutthrough
- ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ ├───expanded: ${if░eq░{SERVER}{server}{queue}{cutthrough}}
  ╰─────result: cutthrough
 using ACL "cutthrough"
 processing "accept" (TESTSUITE/test-config 22)
 check control = cutthrough_delivery
 check verify = recipient
  ╰─────result: cutthrough
 using ACL "cutthrough"
 processing "accept" (TESTSUITE/test-config 22)
 check control = cutthrough_delivery
 check verify = recipient
-domain.com in "! +local_domains"?
- list element: ! +local_domains
+domain.com in domains?
+ list element: !+local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
-domain.com in "! +local_domains"? yes (end of list)
+domain.com in domains? yes (end of list)
+try option router_home_directory
+try option set
+processing address_data
  ╭considering: $local_part
  ╭considering: $local_part
- ├──expanding: $local_part
+ ├──────value: userx
+            ╰──(tainted)
+ ├───expanded: $local_part
  ╰─────result: userx
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
  ╰─────result: userx
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
+try option transport
+try option unseen
+try option unseen
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
-domain.com in "! +local_domains"?
- list element: ! +local_domains
+domain.com in domains?
+ list element: !+local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
-domain.com in "! +local_domains"? yes (end of list)
+domain.com in domains? yes (end of list)
+try option router_home_directory
+try option set
+processing address_data
  ╭considering: $local_part
  ╭considering: $local_part
- ├──expanding: $local_part
+ ├──────value: userx
+            ╰──(tainted)
+ ├───expanded: $local_part
  ╰─────result: userx
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
  ╰─────result: userx
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
-Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in hosts_try_fastopen?
- list element: 
- connected
+try option transport
+try option unseen
+try option unseen
+try option interface
+Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ...
+try option dscp
+ 127.0.0.1 in hosts_try_fastopen?
+  list element: 
+connected
+try option helo_data
  ╭considering: $primary_hostname
  ╭considering: $primary_hostname
- ├──expanding: $primary_hostname
+ ├──────value: myhost.test.ex
+ ├───expanded: $primary_hostname
  ╰─────result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
  ╰─────result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
@@ -102,96 +141,104 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
+         250-LIMITS MAILMAX=1000 RCPTMAX=50000
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
- ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: $host
+try option host_name_extract
+ ╭considering: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ╭considering: $host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├──────value: 127.0.0.1
+  ├considering: }{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: $host
   ╰─────result: 127.0.0.1
   ╰─────result: 127.0.0.1
-  ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+  ╭considering: .outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
   ├───────text: .outlook.com
   ├───────text: .outlook.com
-  ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+  ├considering: \$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
   ├backslashed: '\$'
   ├backslashed: '\$'
-  ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: .outlook.com\$
+  ├considering: }}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: .outlook.com\$
   ╰─────result: .outlook.com$
   ╰─────result: .outlook.com$
-  ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: $item
-  ├─────result: 
+  ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├──────value: 
+  ├───scanning: }{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: $item
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
-  ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}}
+  ╭───scanning: \N^250-([\w.]+)\s\N}}}{$1}}
   ├──protected: ^250-([\w.]+)\s
   ├──protected: ^250-([\w.]+)\s
-  ├───scanning: }}} {$1}}
-  ├──expanding: \N^250-([\w.]+)\s\N
-  ├─────result: ^250-([\w.]+)\s
+  ├───scanning: }}}{$1}}
+  ├───expanded: \N^250-([\w.]+)\s\N
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}}
+ ├──condition: and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}
  ├─────result: false
   ╭───scanning: $1}}
   ├───scanning: }}
  ├─────result: false
   ╭───scanning: $1}}
   ├───scanning: }}
-  ├──expanding: $1
-  ├─────result: 
+  ├───expanded: $1
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+ ├───expanded: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
  ╰─────result: 
  ╰─────result: 
- ╭considering: ${if eq {$address_data}{usery}{*}{:}}
+ ╭considering: ${if░eq░{$address_data}{usery}{*}{:}}
   ╭considering: $address_data}{usery}{*}{:}}
   ╭considering: $address_data}{usery}{*}{:}}
+  ├──────value: userx
+             ╰──(tainted)
   ├considering: }{usery}{*}{:}}
   ├considering: }{usery}{*}{:}}
-  ├──expanding: $address_data
+  ├───expanded: $address_data
   ╰─────result: userx
              ╰──(tainted)
   ╭considering: usery}{*}{:}}
   ├───────text: usery
   ├considering: }{*}{:}}
   ╰─────result: userx
              ╰──(tainted)
   ╭considering: usery}{*}{:}}
   ├───────text: usery
   ├considering: }{*}{:}}
-  ├──expanding: usery
+  ├───expanded: usery
   ╰─────result: usery
   ╰─────result: usery
- ├──condition: eq {$address_data}{usery}
+ ├──condition: eq{$address_data}{usery}
  ├─────result: false
   ╭───scanning: *}{:}}
   ├───────text: *
   ├───scanning: }{:}}
  ├─────result: false
   ╭───scanning: *}{:}}
   ├───────text: *
   ├───scanning: }{:}}
-  ├──expanding: *
-  ├─────result: *
+  ├───expanded: *
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╭considering: :}}
   ├───────text: :
   ├considering: }}
   ╰───skipping: result is not used
   ╭considering: :}}
   ├───────text: :
   ├considering: }}
-  ├──expanding: :
+  ├───expanded: :
   ╰─────result: :
   ╰─────result: :
- ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
+ ├───expanded: ${if░eq░{$address_data}{usery}{*}{:}}
  ╰─────result: :
 127.0.0.1 in hosts_avoid_tls?
  list element: 
 127.0.0.1 in hosts_avoid_tls? no (end of list)
  ╰─────result: :
 127.0.0.1 in hosts_avoid_tls?
  list element: 
 127.0.0.1 in hosts_avoid_tls? no (end of list)
- ╭considering: ${if eq {$address_data}{userz}{*}{:}}
+ ╭considering: ${if░eq░{$address_data}{userz}{*}{:}}
   ╭considering: $address_data}{userz}{*}{:}}
   ╭considering: $address_data}{userz}{*}{:}}
+  ├──────value: userx
+             ╰──(tainted)
   ├considering: }{userz}{*}{:}}
   ├considering: }{userz}{*}{:}}
-  ├──expanding: $address_data
+  ├───expanded: $address_data
   ╰─────result: userx
              ╰──(tainted)
   ╭considering: userz}{*}{:}}
   ├───────text: userz
   ├considering: }{*}{:}}
   ╰─────result: userx
              ╰──(tainted)
   ╭considering: userz}{*}{:}}
   ├───────text: userz
   ├considering: }{*}{:}}
-  ├──expanding: userz
+  ├───expanded: userz
   ╰─────result: userz
   ╰─────result: userz
- ├──condition: eq {$address_data}{userz}
+ ├──condition: eq{$address_data}{userz}
  ├─────result: false
   ╭───scanning: *}{:}}
   ├───────text: *
   ├───scanning: }{:}}
  ├─────result: false
   ╭───scanning: *}{:}}
   ├───────text: *
   ├───scanning: }{:}}
-  ├──expanding: *
-  ├─────result: *
+  ├───expanded: *
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╭considering: :}}
   ├───────text: :
   ├considering: }}
   ╰───skipping: result is not used
   ╭considering: :}}
   ├───────text: :
   ├considering: }}
-  ├──expanding: :
+  ├───expanded: :
   ╰─────result: :
   ╰─────result: :
- ├──expanding: ${if eq {$address_data}{userz}{*}{:}}
+ ├───expanded: ${if░eq░{$address_data}{userz}{*}{:}}
  ╰─────result: :
 127.0.0.1 in hosts_verify_avoid_tls?
  list element: 
  ╰─────result: :
 127.0.0.1 in hosts_verify_avoid_tls?
  list element: 
@@ -211,6 +258,7 @@ cmd buf flush ddd bytes
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
+         250-LIMITS MAILMAX=1000 RCPTMAX=50000
          250-8BITMIME
          250-PIPELINING
          250 HELP
          250-8BITMIME
          250-PIPELINING
          250 HELP
@@ -218,6 +266,7 @@ cmd buf flush ddd bytes
 using PIPELINING
 not using DSN
 127.0.0.1 in hosts_require_auth? no (option unset)
 using PIPELINING
 not using DSN
 127.0.0.1 in hosts_require_auth? no (option unset)
+try option authenticated_sender
   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
   SMTP>> RCPT TO:<userx@domain.com>
 cmd buf flush ddd bytes
   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
   SMTP>> RCPT TO:<userx@domain.com>
 cmd buf flush ddd bytes
@@ -227,357 +276,373 @@ sync_responses expect rcpt for userx@domain.com
   SMTP<< 250 Accepted
 holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
   SMTP<< 250 Accepted
 holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
+try option acl_smtp_predata
 processing "accept" (TESTSUITE/test-config 57)
 accept: condition test succeeded in inline ACL
 end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
 processing "accept" (TESTSUITE/test-config 57)
 accept: condition test succeeded in inline ACL
 end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
+try option message_id_header_domain
+try option message_id_header_text
  ╭considering: ${tod_full}
  ╭considering: ${tod_full}
- ├──expanding: ${tod_full}
- ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
- ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: Received: 
- ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├───expanded: ${tod_full}
+ ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000
+try option received_header_text
+ ╭considering: Received:░${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: Received:░
+ ├considering: ${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:sender_rcvhost
  ├─────result: false
  ├──condition: def:sender_rcvhost
  ├─────result: false
-  ╭───scanning: from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: from 
-  ├───scanning: $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───scanning
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80â\94\80â\94\80text: 
-       
-  â\94\9câ\94\80â\94\80â\94\80scanning: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80expanding: from $sender_rcvhost
-       
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80result: from 
-       
+  ╭───scanning: from░$sender_rcvhost↩
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: from
+  ├───scanning: $sender_rcvhost
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value
+  ├───scanning: ↩
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───────text: ↩
+  â\90\89
+  ├───scanning: }{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───expanded: from░$sender_rcvhost↩
+  â\90\89
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
-  ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+  ╭considering: ${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
   ├──condition: def:sender_ident
   ├─────result: true
   ├──condition: def:sender_ident
   ├─────result: true
-   ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text: from 
-   ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-   ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-   ╎ }}(Exim $version_number)
-   ╎ ${if def:sender_address {(envelope-from <$sender_address>)
-   ╎ }}id $message_exim_id${if def:received_for {
-   ╎ for $received_for}}
-   ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
-   ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-   ╎ }}(Exim $version_number)
-   ╎ ${if def:sender_address {(envelope-from <$sender_address>)
-   ╎ }}id $message_exim_id${if def:received_for {
-   ╎ for $received_for}}
-   ╎├──expanding: $sender_ident
+   ╭considering: from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: from░
+   ├considering: ${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ╎╭considering: $sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ╎␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ╎␉}}(Exim░$version_number)↩
+   ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ╎␉}}id░$message_exim_id${if░def:received_for░{↩
+   ╎␉for░$received_for}}
+   ╎├──────value: CALLER
+   ╎├considering: }░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ╎␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ╎␉}}(Exim░$version_number)↩
+   ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ╎␉}}id░$message_exim_id${if░def:received_for░{↩
+   ╎␉for░$received_for}}
+   ╎├───expanded: $sender_ident
    ╎╰─────result: CALLER
    ├─────op-res: CALLER
    ╎╰─────result: CALLER
    ├─────op-res: CALLER
-   ├considering:  }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text:  
-   ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├──expanding: from ${quote_local_part:$sender_ident} 
-   ╰─────result: from CALLER 
-  ├───item-res: from CALLER 
-  ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+   ├considering: ░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: 
+   ├considering: }}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───expanded: from░${quote_local_part:$sender_ident}░
+   ╰─────result: from░CALLER░
+  ├───item-res: from░CALLER░
+  ├considering: ${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
   ├──condition: def:sender_helo_name
   ├─────result: true
   ├──condition: def:sender_helo_name
   ├─────result: true
-   ╭considering: (helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+   ╭considering: (helo=$sender_helo_name)
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
    ├───────text: (helo=
    ├───────text: (helo=
-   ├considering: $sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├considering: )
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text: )
-       
-   ├considering: }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├──expanding: (helo=$sender_helo_name)
-       
-   ╰─────result: (helo=myhost.test.ex)
-       
+   ├considering: $sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├──────value: myhost.test.ex
+              ╰──(tainted)
+   ├considering: )↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: )↩
+   ␉
+   ├considering: }}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───expanded: (helo=$sender_helo_name)↩
+   ␉
+   ╰─────result: (helo=myhost.test.ex)↩
+   ␉
               ╰──(tainted)
               ╰──(tainted)
-  ├───item-res: (helo=myhost.test.ex)
-       
+  ├───item-res: (helo=myhost.test.ex)
+  ␉
              ╰──(tainted)
              ╰──(tainted)
-  ├considering: }}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}
-  ╰─────result: from CALLER (helo=myhost.test.ex)
-       
+  ├considering: }}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: ${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  }}
+  ╰─────result: from░CALLER░(helo=myhost.test.ex)↩
+  ␉
              ╰──(tainted)
              ╰──(tainted)
- ├───item-res: from CALLER (helo=myhost.test.ex)
-       
+ ├───item-res: from░CALLER░(helo=myhost.test.ex)↩
+ ␉
             ╰──(tainted)
             ╰──(tainted)
- ├considering: by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: by 
- ├considering: $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering:  ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text:  
- ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├considering: by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: by░
+ ├considering: $primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: myhost.test.ex
+ ├considering: ░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: ░
+ ├considering: ${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:received_protocol
  ├─────result: true
  ├──condition: def:received_protocol
  ├─────result: true
-  ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: with 
-  ├considering: $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├considering:  }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text:  
-  ├considering: }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: with $received_protocol 
-  ╰─────result: with local-esmtp 
- ├───item-res: with local-esmtp 
+  ╭considering: with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: with░
+  ├considering: $received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value: local-esmtp
+  ├considering: ░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: ░
+  ├considering: }}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: with░$received_protocol░
+  ╰─────result: with░local-esmtp░
+ ├───item-res: with░local-esmtp░
             ╰──(tainted)
             ╰──(tainted)
- ├considering: ${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding:  ($tls_in_ver)
-  ├─────result:  ()
+ ├considering: ${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: ░($tls_in_ver)
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
- ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
      for $received_for}}
+ ├considering: ${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
␉for░$received_for}}
  ├──condition: def:tls_in_cipher_std
  ├─────result: false
  ├──condition: def:tls_in_cipher_std
  ├─────result: false
-  ╭───scanning:  tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text:  tls 
-  ├───scanning: $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───scanning
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80â\94\80â\94\80text: 
-       
-  â\94\9câ\94\80â\94\80â\94\80scanning: }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80expanding:  tls $tls_in_cipher_std
-       
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80result:  tls 
-       
+  ╭───scanning: ░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: ░tls░
+  ├───scanning: $tls_in_cipher_std
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value
+  ├───scanning: ↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───────text: ↩
+  â\90\89
+  ├───scanning: }}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───expanded: ░tls░$tls_in_cipher_std↩
+  â\90\89
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
- ├considering: (Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: (Exim 
- ├considering: $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering: )
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: )
-       
- ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├considering: (Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: (Exim░
+ ├considering: $version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: x.yz
+ ├considering: )↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: )↩
+ ␉
+ ├considering: ${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:sender_address
  ├─────result: true
  ├──condition: def:sender_address
  ├─────result: true
-  ╭considering: (envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: (envelope-from <
-  ├considering: $sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├considering: >)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: >)
-       
-  ├considering: }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: (envelope-from <$sender_address>)
-       
-  ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
-       
- ├───item-res: (envelope-from <CALLER@myhost.test.ex>)
-       
+  ╭considering: (envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: (envelope-from░<
+  ├considering: $sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value: CALLER@myhost.test.ex
+  ├considering: >)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: >)↩
+  ␉
+  ├considering: }}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: (envelope-from░<$sender_address>)↩
+  ␉
+  ╰─────result: (envelope-from░<CALLER@myhost.test.ex>)↩
+  ␉
+ ├───item-res: (envelope-from░<CALLER@myhost.test.ex>)↩
+ ␉
             ╰──(tainted)
             ╰──(tainted)
- ├considering: id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: id 
- ├considering: $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering: ${if def:received_for {
-       for $received_for}}
+ ├considering: id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: id░
+ ├considering: $message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: 10HmaX-000000005vi-0000
+ ├considering: ${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:received_for
  ├─────result: true
  ├──condition: def:received_for
  ├─────result: true
-  ╭considering: 
-       for $received_for}}
-  ├───────text: 
-       for 
+  ╭considering: 
+  ␉for░$received_for}}
+  ├───────text: 
+  ␉for░
   ├considering: $received_for}}
   ├considering: $received_for}}
+  ├──────value: userx@domain.com
+             ╰──(tainted)
   ├considering: }}
   ├considering: }}
-  ├──expanding: 
-       for $received_for
-  ╰─────result: 
-       for userx@domain.com
+  ├───expanded: ↩
+  ␉for░$received_for
+  ╰─────result: 
+  ␉for░userx@domain.com
              ╰──(tainted)
              ╰──(tainted)
- ├───item-res: 
      for userx@domain.com
+ ├───item-res: 
␉for░userx@domain.com
             ╰──(tainted)
             ╰──(tainted)
- ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
      for $received_for}}
- ╰─────result: Received: from CALLER (helo=myhost.test.ex)
-       by myhost.test.ex with local-esmtp (Exim x.yz)
-       (envelope-from <CALLER@myhost.test.ex>)
-       id 10HmaX-0005vi-00
      for userx@domain.com
+ ├───expanded: Received:░${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
␉for░$received_for}}
+ ╰─────result: Received:░from░CALLER░(helo=myhost.test.ex)↩
+ ␉by░myhost.test.ex░with░local-esmtp░(Exim░x.yz)↩
+ ␉(envelope-from░<CALLER@myhost.test.ex>)↩
+ ␉id░10HmaX-000000005vi-0000↩
␉for░userx@domain.com
             ╰──(tainted)
 ----------- start cutthrough headers send -----------
 ----------- done cutthrough headers send ------------
             ╰──(tainted)
 ----------- start cutthrough headers send -----------
 ----------- done cutthrough headers send ------------
+try option acl_smtp_data
  ╭considering: ${tod_full}
  ╭considering: ${tod_full}
- ├──expanding: ${tod_full}
- ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+ ├───expanded: ${tod_full}
+ ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000
   SMTP>> .
   SMTP>> .
-  SMTP<< 250 OK id=10HmaY-0005vi-00
+  SMTP<< 250 OK id=10HmaY-000000005vi-0000
 LOG: MAIN
 LOG: MAIN
-  >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmaY-0005vi-00"
+  >> userx@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] X=TLS1.x:ke-RSA-AES256-SHAnnn:xxx CV=no C="250 OK id=10HmaY-000000005vi-0000"
   SMTP>> QUIT
   SMTP<< 221 myhost.test.ex closing connection
   SMTP(close)>>
   SMTP>> QUIT
   SMTP<< 221 myhost.test.ex closing connection
   SMTP(close)>>
@@ -587,8 +652,9 @@ LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 LOG: MAIN
   Completed
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 LOG: MAIN
   Completed
+try option acl_smtp_quit
 LOG: smtp_connection MAIN
 LOG: smtp_connection MAIN
-  SMTP connection from CALLER closed by QUIT
+  SMTP connection from CALLER D=qqs closed by QUIT
 >>>>>>>>>>>>>>>> Exim pid=p1235 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 environment after trimming:
 >>>>>>>>>>>>>>>> Exim pid=p1235 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 environment after trimming:
@@ -596,19 +662,35 @@ environment after trimming:
 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
 configuration file is TESTSUITE/test-config
 admin user
 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
 configuration file is TESTSUITE/test-config
 admin user
+try option gecos_pattern
+try option gecos_name
+try option unknown_login
+try option smtp_active_hostname
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
- ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
- ├considering:  ESMTP Exim $version_number $tod_full
- ├───────text:  ESMTP Exim 
- ├considering: $version_number $tod_full
- ├considering:  $tod_full
- ├───────text:  
+try option message_size_limit
+try option acl_smtp_connect
+try option smtp_banner
+ ╭considering: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full
+ ├──────value: myhost.test.ex
+ ├considering: ░ESMTP░Exim░$version_number░$tod_full
+ ├───────text: ░ESMTP░Exim░
+ ├considering: $version_number░$tod_full
+ ├──────value: x.yz
+ ├considering: ░$tod_full
+ ├───────text: ░
  ├considering: $tod_full
  ├considering: $tod_full
- ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
- ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ ├──────value: Tue,░2░Mar░1999░09:44:33░+0000
+ ├───expanded: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full
+ ╰─────result: myhost.test.ex░ESMTP░Exim░x.yz░Tue,░2░Mar░1999░09:44:33░+0000
+try option acl_smtp_helo
+ list element: *
+  in limits_advertise_hosts? yes (matched "*")
  in dsn_advertise_hosts? no (option unset)
  in dsn_advertise_hosts? no (option unset)
+try option acl_smtp_etrn
+try option acl_smtp_vrfy
+try option acl_smtp_expn
  in pipelining_advertise_hosts?
  list element: *
   in pipelining_advertise_hosts? yes (matched "*")
  in pipelining_advertise_hosts?
  list element: *
   in pipelining_advertise_hosts? yes (matched "*")
@@ -616,77 +698,100 @@ LOG: smtp_connection MAIN
  in chunking_advertise_hosts? no (end of list)
  list element: *
   in tls_advertise_hosts? yes (matched "*")
  in chunking_advertise_hosts? no (end of list)
  list element: *
   in tls_advertise_hosts? yes (matched "*")
- ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
+try option acl_smtp_mail
+try option acl_smtp_rcpt
+ ╭considering: ${if░eq░{SERVER}{server}{queue}{cutthrough}}
   ╭considering: SERVER}{server}{queue}{cutthrough}}
   ├───────text: SERVER
   ├considering: }{server}{queue}{cutthrough}}
   ╭considering: SERVER}{server}{queue}{cutthrough}}
   ├───────text: SERVER
   ├considering: }{server}{queue}{cutthrough}}
-  ├──expanding: SERVER
+  ├───expanded: SERVER
   ╰─────result: SERVER
   ╭considering: server}{queue}{cutthrough}}
   ├───────text: server
   ├considering: }{queue}{cutthrough}}
   ╰─────result: SERVER
   ╭considering: server}{queue}{cutthrough}}
   ├───────text: server
   ├considering: }{queue}{cutthrough}}
-  ├──expanding: server
+  ├───expanded: server
   ╰─────result: server
   ╰─────result: server
- ├──condition: eq {SERVER}{server}
+ ├──condition: eq{SERVER}{server}
  ├─────result: false
   ╭───scanning: queue}{cutthrough}}
   ├───────text: queue
   ├───scanning: }{cutthrough}}
  ├─────result: false
   ╭───scanning: queue}{cutthrough}}
   ├───────text: queue
   ├───scanning: }{cutthrough}}
-  ├──expanding: queue
-  ├─────result: queue
+  ├───expanded: queue
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╭considering: cutthrough}}
   ├───────text: cutthrough
   ├considering: }}
   ╰───skipping: result is not used
   ╭considering: cutthrough}}
   ├───────text: cutthrough
   ├considering: }}
-  ├──expanding: cutthrough
+  ├───expanded: cutthrough
   ╰─────result: cutthrough
   ╰─────result: cutthrough
- ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ ├───expanded: ${if░eq░{SERVER}{server}{queue}{cutthrough}}
  ╰─────result: cutthrough
 using ACL "cutthrough"
 processing "accept" (TESTSUITE/test-config 22)
 check control = cutthrough_delivery
 check verify = recipient
  ╰─────result: cutthrough
 using ACL "cutthrough"
 processing "accept" (TESTSUITE/test-config 22)
 check control = cutthrough_delivery
 check verify = recipient
-domain.com in "! +local_domains"?
- list element: ! +local_domains
+domain.com in domains?
+ list element: !+local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
-domain.com in "! +local_domains"? yes (end of list)
+domain.com in domains? yes (end of list)
+try option router_home_directory
+try option set
+processing address_data
  ╭considering: $local_part
  ╭considering: $local_part
- ├──expanding: $local_part
+ ├──────value: usery
+            ╰──(tainted)
+ ├───expanded: $local_part
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
+try option transport
+try option unseen
+try option unseen
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
-domain.com in "! +local_domains"?
- list element: ! +local_domains
+domain.com in domains?
+ list element: !+local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
-domain.com in "! +local_domains"? yes (end of list)
+domain.com in domains? yes (end of list)
+try option router_home_directory
+try option set
+processing address_data
  ╭considering: $local_part
  ╭considering: $local_part
- ├──expanding: $local_part
+ ├──────value: usery
+            ╰──(tainted)
+ ├───expanded: $local_part
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
-Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in hosts_try_fastopen?
- list element: 
- connected
+try option transport
+try option unseen
+try option unseen
+try option interface
+Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ...
+try option dscp
+ 127.0.0.1 in hosts_try_fastopen?
+  list element: 
+connected
+try option helo_data
  ╭considering: $primary_hostname
  ╭considering: $primary_hostname
- ├──expanding: $primary_hostname
+ ├──────value: myhost.test.ex
+ ├───expanded: $primary_hostname
  ╰─────result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
  ╰─────result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
@@ -694,67 +799,73 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
+         250-LIMITS MAILMAX=1000 RCPTMAX=50000
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
- ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: $host
+try option host_name_extract
+ ╭considering: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ╭considering: $host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├──────value: 127.0.0.1
+  ├considering: }{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: $host
   ╰─────result: 127.0.0.1
   ╰─────result: 127.0.0.1
-  ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+  ╭considering: .outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
   ├───────text: .outlook.com
   ├───────text: .outlook.com
-  ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+  ├considering: \$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
   ├backslashed: '\$'
   ├backslashed: '\$'
-  ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: .outlook.com\$
+  ├considering: }}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: .outlook.com\$
   ╰─────result: .outlook.com$
   ╰─────result: .outlook.com$
-  ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: $item
-  ├─────result: 
+  ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├──────value: 
+  ├───scanning: }{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: $item
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
-  ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}}
+  ╭───scanning: \N^250-([\w.]+)\s\N}}}{$1}}
   ├──protected: ^250-([\w.]+)\s
   ├──protected: ^250-([\w.]+)\s
-  ├───scanning: }}} {$1}}
-  ├──expanding: \N^250-([\w.]+)\s\N
-  ├─────result: ^250-([\w.]+)\s
+  ├───scanning: }}}{$1}}
+  ├───expanded: \N^250-([\w.]+)\s\N
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}}
+ ├──condition: and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}
  ├─────result: false
   ╭───scanning: $1}}
   ├───scanning: }}
  ├─────result: false
   ╭───scanning: $1}}
   ├───scanning: }}
-  ├──expanding: $1
-  ├─────result: 
+  ├───expanded: $1
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+ ├───expanded: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
  ╰─────result: 
  ╰─────result: 
- ╭considering: ${if eq {$address_data}{usery}{*}{:}}
+ ╭considering: ${if░eq░{$address_data}{usery}{*}{:}}
   ╭considering: $address_data}{usery}{*}{:}}
   ╭considering: $address_data}{usery}{*}{:}}
+  ├──────value: usery
+             ╰──(tainted)
   ├considering: }{usery}{*}{:}}
   ├considering: }{usery}{*}{:}}
-  ├──expanding: $address_data
+  ├───expanded: $address_data
   ╰─────result: usery
              ╰──(tainted)
   ╭considering: usery}{*}{:}}
   ├───────text: usery
   ├considering: }{*}{:}}
   ╰─────result: usery
              ╰──(tainted)
   ╭considering: usery}{*}{:}}
   ├───────text: usery
   ├considering: }{*}{:}}
-  ├──expanding: usery
+  ├───expanded: usery
   ╰─────result: usery
   ╰─────result: usery
- ├──condition: eq {$address_data}{usery}
+ ├──condition: eq{$address_data}{usery}
  ├─────result: true
   ╭considering: *}{:}}
   ├───────text: *
   ├considering: }{:}}
  ├─────result: true
   ╭considering: *}{:}}
   ├───────text: *
   ├considering: }{:}}
-  ├──expanding: *
+  ├───expanded: *
   ╰─────result: *
   ╭───scanning: :}}
   ├───────text: :
   ├───scanning: }}
   ╰─────result: *
   ╭───scanning: :}}
   ├───────text: :
   ├───scanning: }}
-  ├──expanding: :
-  ├─────result: :
+  ├───expanded: :
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
+ ├───expanded: ${if░eq░{$address_data}{usery}{*}{:}}
  ╰─────result: *
 127.0.0.1 in hosts_avoid_tls?
  list element: *
  ╰─────result: *
 127.0.0.1 in hosts_avoid_tls?
  list element: *
@@ -763,6 +874,7 @@ cmd buf flush ddd bytes
 using PIPELINING
 not using DSN
 127.0.0.1 in hosts_require_auth? no (option unset)
 using PIPELINING
 not using DSN
 127.0.0.1 in hosts_require_auth? no (option unset)
+try option authenticated_sender
   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
   SMTP>> RCPT TO:<usery@domain.com>
 cmd buf flush ddd bytes
   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
   SMTP>> RCPT TO:<usery@domain.com>
 cmd buf flush ddd bytes
@@ -772,357 +884,373 @@ sync_responses expect rcpt for usery@domain.com
   SMTP<< 250 Accepted
 holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
   SMTP<< 250 Accepted
 holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
+try option acl_smtp_predata
 processing "accept" (TESTSUITE/test-config 57)
 accept: condition test succeeded in inline ACL
 end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
 processing "accept" (TESTSUITE/test-config 57)
 accept: condition test succeeded in inline ACL
 end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
+try option message_id_header_domain
+try option message_id_header_text
  ╭considering: ${tod_full}
  ╭considering: ${tod_full}
- ├──expanding: ${tod_full}
- ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
- ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: Received: 
- ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├───expanded: ${tod_full}
+ ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000
+try option received_header_text
+ ╭considering: Received:░${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: Received:░
+ ├considering: ${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:sender_rcvhost
  ├─────result: false
  ├──condition: def:sender_rcvhost
  ├─────result: false
-  ╭───scanning: from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: from 
-  ├───scanning: $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───scanning
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80â\94\80â\94\80text: 
-       
-  â\94\9câ\94\80â\94\80â\94\80scanning: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80expanding: from $sender_rcvhost
-       
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80result: from 
-       
+  ╭───scanning: from░$sender_rcvhost↩
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: from
+  ├───scanning: $sender_rcvhost
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value
+  ├───scanning: ↩
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───────text: ↩
+  â\90\89
+  ├───scanning: }{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───expanded: from░$sender_rcvhost↩
+  â\90\89
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
-  ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+  ╭considering: ${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
   ├──condition: def:sender_ident
   ├─────result: true
   ├──condition: def:sender_ident
   ├─────result: true
-   ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text: from 
-   ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-   ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-   ╎ }}(Exim $version_number)
-   ╎ ${if def:sender_address {(envelope-from <$sender_address>)
-   ╎ }}id $message_exim_id${if def:received_for {
-   ╎ for $received_for}}
-   ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
-   ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-   ╎ }}(Exim $version_number)
-   ╎ ${if def:sender_address {(envelope-from <$sender_address>)
-   ╎ }}id $message_exim_id${if def:received_for {
-   ╎ for $received_for}}
-   ╎├──expanding: $sender_ident
+   ╭considering: from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: from░
+   ├considering: ${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ╎╭considering: $sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ╎␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ╎␉}}(Exim░$version_number)↩
+   ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ╎␉}}id░$message_exim_id${if░def:received_for░{↩
+   ╎␉for░$received_for}}
+   ╎├──────value: CALLER
+   ╎├considering: }░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ╎␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ╎␉}}(Exim░$version_number)↩
+   ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ╎␉}}id░$message_exim_id${if░def:received_for░{↩
+   ╎␉for░$received_for}}
+   ╎├───expanded: $sender_ident
    ╎╰─────result: CALLER
    ├─────op-res: CALLER
    ╎╰─────result: CALLER
    ├─────op-res: CALLER
-   ├considering:  }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text:  
-   ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├──expanding: from ${quote_local_part:$sender_ident} 
-   ╰─────result: from CALLER 
-  ├───item-res: from CALLER 
-  ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+   ├considering: ░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: 
+   ├considering: }}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───expanded: from░${quote_local_part:$sender_ident}░
+   ╰─────result: from░CALLER░
+  ├───item-res: from░CALLER░
+  ├considering: ${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
   ├──condition: def:sender_helo_name
   ├─────result: true
   ├──condition: def:sender_helo_name
   ├─────result: true
-   ╭considering: (helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+   ╭considering: (helo=$sender_helo_name)
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
    ├───────text: (helo=
    ├───────text: (helo=
-   ├considering: $sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├considering: )
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text: )
-       
-   ├considering: }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├──expanding: (helo=$sender_helo_name)
-       
-   ╰─────result: (helo=myhost.test.ex)
-       
+   ├considering: $sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├──────value: myhost.test.ex
+              ╰──(tainted)
+   ├considering: )↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: )↩
+   ␉
+   ├considering: }}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───expanded: (helo=$sender_helo_name)↩
+   ␉
+   ╰─────result: (helo=myhost.test.ex)↩
+   ␉
               ╰──(tainted)
               ╰──(tainted)
-  ├───item-res: (helo=myhost.test.ex)
-       
+  ├───item-res: (helo=myhost.test.ex)
+  ␉
              ╰──(tainted)
              ╰──(tainted)
-  ├considering: }}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}
-  ╰─────result: from CALLER (helo=myhost.test.ex)
-       
+  ├considering: }}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: ${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  }}
+  ╰─────result: from░CALLER░(helo=myhost.test.ex)↩
+  ␉
              ╰──(tainted)
              ╰──(tainted)
- ├───item-res: from CALLER (helo=myhost.test.ex)
-       
+ ├───item-res: from░CALLER░(helo=myhost.test.ex)↩
+ ␉
             ╰──(tainted)
             ╰──(tainted)
- ├considering: by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: by 
- ├considering: $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering:  ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text:  
- ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├considering: by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: by░
+ ├considering: $primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: myhost.test.ex
+ ├considering: ░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: ░
+ ├considering: ${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:received_protocol
  ├─────result: true
  ├──condition: def:received_protocol
  ├─────result: true
-  ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: with 
-  ├considering: $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├considering:  }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text:  
-  ├considering: }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: with $received_protocol 
-  ╰─────result: with local-esmtp 
- ├───item-res: with local-esmtp 
+  ╭considering: with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: with░
+  ├considering: $received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value: local-esmtp
+  ├considering: ░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: ░
+  ├considering: }}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: with░$received_protocol░
+  ╰─────result: with░local-esmtp░
+ ├───item-res: with░local-esmtp░
             ╰──(tainted)
             ╰──(tainted)
- ├considering: ${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding:  ($tls_in_ver)
-  ├─────result:  ()
+ ├considering: ${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: ░($tls_in_ver)
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
- ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
      for $received_for}}
+ ├considering: ${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
␉for░$received_for}}
  ├──condition: def:tls_in_cipher_std
  ├─────result: false
  ├──condition: def:tls_in_cipher_std
  ├─────result: false
-  ╭───scanning:  tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text:  tls 
-  ├───scanning: $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───scanning
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80â\94\80â\94\80text: 
-       
-  â\94\9câ\94\80â\94\80â\94\80scanning: }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80expanding:  tls $tls_in_cipher_std
-       
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80result:  tls 
-       
+  ╭───scanning: ░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: ░tls░
+  ├───scanning: $tls_in_cipher_std
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value
+  ├───scanning: ↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───────text: ↩
+  â\90\89
+  ├───scanning: }}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───expanded: ░tls░$tls_in_cipher_std↩
+  â\90\89
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
- ├considering: (Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: (Exim 
- ├considering: $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering: )
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: )
-       
- ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├considering: (Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: (Exim░
+ ├considering: $version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: x.yz
+ ├considering: )↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: )↩
+ ␉
+ ├considering: ${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:sender_address
  ├─────result: true
  ├──condition: def:sender_address
  ├─────result: true
-  ╭considering: (envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: (envelope-from <
-  ├considering: $sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├considering: >)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: >)
-       
-  ├considering: }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: (envelope-from <$sender_address>)
-       
-  ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
-       
- ├───item-res: (envelope-from <CALLER@myhost.test.ex>)
-       
+  ╭considering: (envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: (envelope-from░<
+  ├considering: $sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value: CALLER@myhost.test.ex
+  ├considering: >)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: >)↩
+  ␉
+  ├considering: }}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: (envelope-from░<$sender_address>)↩
+  ␉
+  ╰─────result: (envelope-from░<CALLER@myhost.test.ex>)↩
+  ␉
+ ├───item-res: (envelope-from░<CALLER@myhost.test.ex>)↩
+ ␉
             ╰──(tainted)
             ╰──(tainted)
- ├considering: id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: id 
- ├considering: $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering: ${if def:received_for {
-       for $received_for}}
+ ├considering: id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: id░
+ ├considering: $message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: 10HmaZ-000000005vi-0000
+ ├considering: ${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:received_for
  ├─────result: true
  ├──condition: def:received_for
  ├─────result: true
-  ╭considering: 
-       for $received_for}}
-  ├───────text: 
-       for 
+  ╭considering: 
+  ␉for░$received_for}}
+  ├───────text: 
+  ␉for░
   ├considering: $received_for}}
   ├considering: $received_for}}
+  ├──────value: usery@domain.com
+             ╰──(tainted)
   ├considering: }}
   ├considering: }}
-  ├──expanding: 
-       for $received_for
-  ╰─────result: 
-       for usery@domain.com
+  ├───expanded: ↩
+  ␉for░$received_for
+  ╰─────result: 
+  ␉for░usery@domain.com
              ╰──(tainted)
              ╰──(tainted)
- ├───item-res: 
      for usery@domain.com
+ ├───item-res: 
␉for░usery@domain.com
             ╰──(tainted)
             ╰──(tainted)
- ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
      for $received_for}}
- ╰─────result: Received: from CALLER (helo=myhost.test.ex)
-       by myhost.test.ex with local-esmtp (Exim x.yz)
-       (envelope-from <CALLER@myhost.test.ex>)
-       id 10HmaZ-0005vi-00
      for usery@domain.com
+ ├───expanded: Received:░${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
␉for░$received_for}}
+ ╰─────result: Received:░from░CALLER░(helo=myhost.test.ex)↩
+ ␉by░myhost.test.ex░with░local-esmtp░(Exim░x.yz)↩
+ ␉(envelope-from░<CALLER@myhost.test.ex>)↩
+ ␉id░10HmaZ-000000005vi-0000↩
␉for░usery@domain.com
             ╰──(tainted)
 ----------- start cutthrough headers send -----------
 ----------- done cutthrough headers send ------------
             ╰──(tainted)
 ----------- start cutthrough headers send -----------
 ----------- done cutthrough headers send ------------
+try option acl_smtp_data
  ╭considering: ${tod_full}
  ╭considering: ${tod_full}
- ├──expanding: ${tod_full}
- ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+ ├───expanded: ${tod_full}
+ ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000
   SMTP>> .
   SMTP>> .
-  SMTP<< 250 OK id=10HmbA-0005vi-00
+  SMTP<< 250 OK id=10HmbA-000000005vi-0000
 LOG: MAIN
 LOG: MAIN
-  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-0005vi-00"
+  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbA-000000005vi-0000"
   SMTP>> QUIT
   SMTP<< 221 myhost.test.ex closing connection
   SMTP(close)>>
   SMTP>> QUIT
   SMTP<< 221 myhost.test.ex closing connection
   SMTP(close)>>
@@ -1132,8 +1260,9 @@ LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 LOG: MAIN
   Completed
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 LOG: MAIN
   Completed
+try option acl_smtp_quit
 LOG: smtp_connection MAIN
 LOG: smtp_connection MAIN
-  SMTP connection from CALLER closed by QUIT
+  SMTP connection from CALLER D=qqs closed by QUIT
 >>>>>>>>>>>>>>>> Exim pid=p1236 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 environment after trimming:
 >>>>>>>>>>>>>>>> Exim pid=p1236 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 Exim version x.yz ....
 environment after trimming:
@@ -1141,19 +1270,35 @@ environment after trimming:
 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
 configuration file is TESTSUITE/test-config
 admin user
 adding SSLKEYLOGFILE=TESTSUITE/spool/sslkeys
 configuration file is TESTSUITE/test-config
 admin user
+try option gecos_pattern
+try option gecos_name
+try option unknown_login
+try option smtp_active_hostname
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
  in hosts_connection_nolog? no (option unset)
 LOG: smtp_connection MAIN
   SMTP connection from CALLER
- ╭considering: $smtp_active_hostname ESMTP Exim $version_number $tod_full
- ├considering:  ESMTP Exim $version_number $tod_full
- ├───────text:  ESMTP Exim 
- ├considering: $version_number $tod_full
- ├considering:  $tod_full
- ├───────text:  
+try option message_size_limit
+try option acl_smtp_connect
+try option smtp_banner
+ ╭considering: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full
+ ├──────value: myhost.test.ex
+ ├considering: ░ESMTP░Exim░$version_number░$tod_full
+ ├───────text: ░ESMTP░Exim░
+ ├considering: $version_number░$tod_full
+ ├──────value: x.yz
+ ├considering: ░$tod_full
+ ├───────text: ░
  ├considering: $tod_full
  ├considering: $tod_full
- ├──expanding: $smtp_active_hostname ESMTP Exim $version_number $tod_full
- ╰─────result: myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
+ ├──────value: Tue,░2░Mar░1999░09:44:33░+0000
+ ├───expanded: $smtp_active_hostname░ESMTP░Exim░$version_number░$tod_full
+ ╰─────result: myhost.test.ex░ESMTP░Exim░x.yz░Tue,░2░Mar░1999░09:44:33░+0000
+try option acl_smtp_helo
+ list element: *
+  in limits_advertise_hosts? yes (matched "*")
  in dsn_advertise_hosts? no (option unset)
  in dsn_advertise_hosts? no (option unset)
+try option acl_smtp_etrn
+try option acl_smtp_vrfy
+try option acl_smtp_expn
  in pipelining_advertise_hosts?
  list element: *
   in pipelining_advertise_hosts? yes (matched "*")
  in pipelining_advertise_hosts?
  list element: *
   in pipelining_advertise_hosts? yes (matched "*")
@@ -1161,77 +1306,100 @@ LOG: smtp_connection MAIN
  in chunking_advertise_hosts? no (end of list)
  list element: *
   in tls_advertise_hosts? yes (matched "*")
  in chunking_advertise_hosts? no (end of list)
  list element: *
   in tls_advertise_hosts? yes (matched "*")
- ╭considering: ${if eq {SERVER}{server}{queue}{cutthrough}}
+try option acl_smtp_mail
+try option acl_smtp_rcpt
+ ╭considering: ${if░eq░{SERVER}{server}{queue}{cutthrough}}
   ╭considering: SERVER}{server}{queue}{cutthrough}}
   ├───────text: SERVER
   ├considering: }{server}{queue}{cutthrough}}
   ╭considering: SERVER}{server}{queue}{cutthrough}}
   ├───────text: SERVER
   ├considering: }{server}{queue}{cutthrough}}
-  ├──expanding: SERVER
+  ├───expanded: SERVER
   ╰─────result: SERVER
   ╭considering: server}{queue}{cutthrough}}
   ├───────text: server
   ├considering: }{queue}{cutthrough}}
   ╰─────result: SERVER
   ╭considering: server}{queue}{cutthrough}}
   ├───────text: server
   ├considering: }{queue}{cutthrough}}
-  ├──expanding: server
+  ├───expanded: server
   ╰─────result: server
   ╰─────result: server
- ├──condition: eq {SERVER}{server}
+ ├──condition: eq{SERVER}{server}
  ├─────result: false
   ╭───scanning: queue}{cutthrough}}
   ├───────text: queue
   ├───scanning: }{cutthrough}}
  ├─────result: false
   ╭───scanning: queue}{cutthrough}}
   ├───────text: queue
   ├───scanning: }{cutthrough}}
-  ├──expanding: queue
-  ├─────result: queue
+  ├───expanded: queue
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╭considering: cutthrough}}
   ├───────text: cutthrough
   ├considering: }}
   ╰───skipping: result is not used
   ╭considering: cutthrough}}
   ├───────text: cutthrough
   ├considering: }}
-  ├──expanding: cutthrough
+  ├───expanded: cutthrough
   ╰─────result: cutthrough
   ╰─────result: cutthrough
- ├──expanding: ${if eq {SERVER}{server}{queue}{cutthrough}}
+ ├───expanded: ${if░eq░{SERVER}{server}{queue}{cutthrough}}
  ╰─────result: cutthrough
 using ACL "cutthrough"
 processing "accept" (TESTSUITE/test-config 22)
 check control = cutthrough_delivery
 check verify = recipient
  ╰─────result: cutthrough
 using ACL "cutthrough"
 processing "accept" (TESTSUITE/test-config 22)
 check control = cutthrough_delivery
 check verify = recipient
-domain.com in "! +local_domains"?
- list element: ! +local_domains
+domain.com in domains?
+ list element: !+local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
-domain.com in "! +local_domains"? yes (end of list)
+domain.com in domains? yes (end of list)
+try option router_home_directory
+try option set
+processing address_data
  ╭considering: $local_part
  ╭considering: $local_part
- ├──expanding: $local_part
+ ├──────value: usery
+            ╰──(tainted)
+ ├───expanded: $local_part
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
+try option transport
+try option unseen
+try option unseen
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
 ----------- end verify ------------
 accept: condition test succeeded in ACL "cutthrough"
 end of ACL "cutthrough": ACCEPT
 ----------- start cutthrough setup ------------
-domain.com in "! +local_domains"?
- list element: ! +local_domains
+domain.com in domains?
+ list element: !+local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
   start sublist local_domains
    domain.com in "test.ex : *.test.ex"?
    ╎list element: test.ex
    ╎list element: *.test.ex
    domain.com in "test.ex : *.test.ex"? no (end of list)
   end sublist local_domains
-domain.com in "! +local_domains"? yes (end of list)
+domain.com in domains? yes (end of list)
+try option router_home_directory
+try option set
+processing address_data
  ╭considering: $local_part
  ╭considering: $local_part
- ├──expanding: $local_part
+ ├──────value: usery
+            ╰──(tainted)
+ ├───expanded: $local_part
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
  ╰─────result: usery
             ╰──(tainted)
 domain.com in "*"?
  list element: *
  domain.com in "*"? yes (matched "*")
-Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in hosts_try_fastopen?
- list element: 
- connected
+try option transport
+try option unseen
+try option unseen
+try option interface
+Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ...
+try option dscp
+ 127.0.0.1 in hosts_try_fastopen?
+  list element: 
+connected
+try option helo_data
  ╭considering: $primary_hostname
  ╭considering: $primary_hostname
- ├──expanding: $primary_hostname
+ ├──────value: myhost.test.ex
+ ├───expanded: $primary_hostname
  ╰─────result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
  ╰─────result: myhost.test.ex
   SMTP<< 220 myhost.test.ex ESMTP Exim x.yz Tue, 2 Mar 1999 09:44:33 +0000
 127.0.0.1 in hosts_avoid_esmtp? no (option unset)
@@ -1239,67 +1407,73 @@ Connecting to 127.0.0.1 [127.0.0.1]:PORT_D from ip4.ip4.ip4.ip4 ... 127.0.0.1 in
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
 cmd buf flush ddd bytes
   SMTP<< 250-myhost.test.ex Hello the.local.host.name [ip4.ip4.ip4.ip4]
          250-SIZE 52428800
+         250-LIMITS MAILMAX=1000 RCPTMAX=50000
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
          250-8BITMIME
          250-PIPELINING
          250-STARTTLS
          250 HELP
- ╭considering: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ╭considering: $host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├considering: }{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: $host
+try option host_name_extract
+ ╭considering: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ╭considering: $host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├──────value: 127.0.0.1
+  ├considering: }{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: $host
   ╰─────result: 127.0.0.1
   ╰─────result: 127.0.0.1
-  ╭considering: .outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+  ╭considering: .outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
   ├───────text: .outlook.com
   ├───────text: .outlook.com
-  ├considering: \$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+  ├considering: \$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
   ├backslashed: '\$'
   ├backslashed: '\$'
-  ├considering: }} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: .outlook.com\$
+  ├considering: }}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: .outlook.com\$
   ╰─────result: .outlook.com$
   ╰─────result: .outlook.com$
-  ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├───scanning: }{\N^250-([\w.]+)\s\N}}} {$1}}
-  ├──expanding: $item
-  ├─────result: 
+  ╭───scanning: $item}{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├──────value: 
+  ├───scanning: }{\N^250-([\w.]+)\s\N}}}░{$1}}
+  ├───expanded: $item
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
-  ╭───scanning: \N^250-([\w.]+)\s\N}}} {$1}}
+  ╭───scanning: \N^250-([\w.]+)\s\N}}}{$1}}
   ├──protected: ^250-([\w.]+)\s
   ├──protected: ^250-([\w.]+)\s
-  ├───scanning: }}} {$1}}
-  ├──expanding: \N^250-([\w.]+)\s\N
-  ├─────result: ^250-([\w.]+)\s
+  ├───scanning: }}}{$1}}
+  ├───expanded: \N^250-([\w.]+)\s\N
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──condition: and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}}
+ ├──condition: and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}
  ├─────result: false
   ╭───scanning: $1}}
   ├───scanning: }}
  ├─────result: false
   ╭───scanning: $1}}
   ├───scanning: }}
-  ├──expanding: $1
-  ├─────result: 
+  ├───expanded: $1
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──expanding: ${if and {{match{$host}{.outlook.com\$}} {match{$item}{\N^250-([\w.]+)\s\N}}} {$1}}
+ ├───expanded: ${if░and░{{match{$host}{.outlook.com\$}}░{match{$item}{\N^250-([\w.]+)\s\N}}}░{$1}}
  ╰─────result: 
  ╰─────result: 
- ╭considering: ${if eq {$address_data}{usery}{*}{:}}
+ ╭considering: ${if░eq░{$address_data}{usery}{*}{:}}
   ╭considering: $address_data}{usery}{*}{:}}
   ╭considering: $address_data}{usery}{*}{:}}
+  ├──────value: usery
+             ╰──(tainted)
   ├considering: }{usery}{*}{:}}
   ├considering: }{usery}{*}{:}}
-  ├──expanding: $address_data
+  ├───expanded: $address_data
   ╰─────result: usery
              ╰──(tainted)
   ╭considering: usery}{*}{:}}
   ├───────text: usery
   ├considering: }{*}{:}}
   ╰─────result: usery
              ╰──(tainted)
   ╭considering: usery}{*}{:}}
   ├───────text: usery
   ├considering: }{*}{:}}
-  ├──expanding: usery
+  ├───expanded: usery
   ╰─────result: usery
   ╰─────result: usery
- ├──condition: eq {$address_data}{usery}
+ ├──condition: eq{$address_data}{usery}
  ├─────result: true
   ╭considering: *}{:}}
   ├───────text: *
   ├considering: }{:}}
  ├─────result: true
   ╭considering: *}{:}}
   ├───────text: *
   ├considering: }{:}}
-  ├──expanding: *
+  ├───expanded: *
   ╰─────result: *
   ╭───scanning: :}}
   ├───────text: :
   ├───scanning: }}
   ╰─────result: *
   ╭───scanning: :}}
   ├───────text: :
   ├───scanning: }}
-  ├──expanding: :
-  ├─────result: :
+  ├───expanded: :
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
- ├──expanding: ${if eq {$address_data}{usery}{*}{:}}
+ ├───expanded: ${if░eq░{$address_data}{usery}{*}{:}}
  ╰─────result: *
 127.0.0.1 in hosts_avoid_tls?
  list element: *
  ╰─────result: *
 127.0.0.1 in hosts_avoid_tls?
  list element: *
@@ -1308,6 +1482,7 @@ cmd buf flush ddd bytes
 using PIPELINING
 not using DSN
 127.0.0.1 in hosts_require_auth? no (option unset)
 using PIPELINING
 not using DSN
 127.0.0.1 in hosts_require_auth? no (option unset)
+try option authenticated_sender
   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
   SMTP>> RCPT TO:<usery@domain.com>
 cmd buf flush ddd bytes
   SMTP|> MAIL FROM:<CALLER@myhost.test.ex>
   SMTP>> RCPT TO:<usery@domain.com>
 cmd buf flush ddd bytes
@@ -1317,357 +1492,373 @@ sync_responses expect rcpt for usery@domain.com
   SMTP<< 250 Accepted
 holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
   SMTP<< 250 Accepted
 holding verify callout open for cutthrough delivery
 ----------- end cutthrough setup ------------
+try option acl_smtp_predata
 processing "accept" (TESTSUITE/test-config 57)
 accept: condition test succeeded in inline ACL
 end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
 processing "accept" (TESTSUITE/test-config 57)
 accept: condition test succeeded in inline ACL
 end of inline ACL: ACCEPT
   SMTP>> DATA
   SMTP<< 354 Enter message, ending with "." on a line by itself
+try option message_id_header_domain
+try option message_id_header_text
  ╭considering: ${tod_full}
  ╭considering: ${tod_full}
- ├──expanding: ${tod_full}
- ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
- ╭considering: Received: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: Received: 
- ├considering: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├───expanded: ${tod_full}
+ ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000
+try option received_header_text
+ ╭considering: Received:░${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: Received:░
+ ├considering: ${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:sender_rcvhost
  ├─────result: false
  ├──condition: def:sender_rcvhost
  ├─────result: false
-  ╭───scanning: from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: from 
-  ├───scanning: $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───scanning
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80â\94\80â\94\80text: 
-       
-  â\94\9câ\94\80â\94\80â\94\80scanning: }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80expanding: from $sender_rcvhost
-       
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80result: from 
-       
+  ╭───scanning: from░$sender_rcvhost↩
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: from
+  ├───scanning: $sender_rcvhost
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value
+  ├───scanning: ↩
+  ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───────text: ↩
+  â\90\89
+  ├───scanning: }{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───expanded: from░$sender_rcvhost↩
+  â\90\89
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
   ╰───skipping: result is not used
-  ╭considering: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+  ╭considering: ${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
   ├──condition: def:sender_ident
   ├─────result: true
   ├──condition: def:sender_ident
   ├─────result: true
-   ╭considering: from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text: from 
-   ├considering: ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ╎╭considering: $sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-   ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-   ╎ }}(Exim $version_number)
-   ╎ ${if def:sender_address {(envelope-from <$sender_address>)
-   ╎ }}id $message_exim_id${if def:received_for {
-   ╎ for $received_for}}
-   ╎├considering: } }}${if def:sender_helo_name {(helo=$sender_helo_name)
-   ╎ }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-   ╎ }}(Exim $version_number)
-   ╎ ${if def:sender_address {(envelope-from <$sender_address>)
-   ╎ }}id $message_exim_id${if def:received_for {
-   ╎ for $received_for}}
-   ╎├──expanding: $sender_ident
+   ╭considering: from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: from░
+   ├considering: ${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ╎╭considering: $sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ╎␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ╎␉}}(Exim░$version_number)↩
+   ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ╎␉}}id░$message_exim_id${if░def:received_for░{↩
+   ╎␉for░$received_for}}
+   ╎├──────value: CALLER
+   ╎├considering: }░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ╎␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ╎␉}}(Exim░$version_number)↩
+   ╎␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ╎␉}}id░$message_exim_id${if░def:received_for░{↩
+   ╎␉for░$received_for}}
+   ╎├───expanded: $sender_ident
    ╎╰─────result: CALLER
    ├─────op-res: CALLER
    ╎╰─────result: CALLER
    ├─────op-res: CALLER
-   ├considering:  }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text:  
-   ├considering: }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├──expanding: from ${quote_local_part:$sender_ident} 
-   ╰─────result: from CALLER 
-  ├───item-res: from CALLER 
-  ├considering: ${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+   ├considering: ░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: 
+   ├considering: }}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───expanded: from░${quote_local_part:$sender_ident}░
+   ╰─────result: from░CALLER░
+  ├───item-res: from░CALLER░
+  ├considering: ${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
   ├──condition: def:sender_helo_name
   ├─────result: true
   ├──condition: def:sender_helo_name
   ├─────result: true
-   ╭considering: (helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+   ╭considering: (helo=$sender_helo_name)
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
    ├───────text: (helo=
    ├───────text: (helo=
-   ├considering: $sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├considering: )
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├───────text: )
-       
-   ├considering: }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-   ├──expanding: (helo=$sender_helo_name)
-       
-   ╰─────result: (helo=myhost.test.ex)
-       
+   ├considering: $sender_helo_name)↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├──────value: myhost.test.ex
               ╰──(tainted)
               ╰──(tainted)
-  ├───item-res: (helo=myhost.test.ex)
-       
+   ├considering: )↩
+   ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───────text: )↩
+   ␉
+   ├considering: }}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+   ␉}}(Exim░$version_number)↩
+   ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+   ␉}}id░$message_exim_id${if░def:received_for░{↩
+   ␉for░$received_for}}
+   ├───expanded: (helo=$sender_helo_name)↩
+   ␉
+   ╰─────result: (helo=myhost.test.ex)↩
+   ␉
+              ╰──(tainted)
+  ├───item-res: (helo=myhost.test.ex)↩
+  ␉
              ╰──(tainted)
              ╰──(tainted)
-  ├considering: }}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: ${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}
-  ╰─────result: from CALLER (helo=myhost.test.ex)
-       
+  ├considering: }}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: ${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+  }}
+  ╰─────result: from░CALLER░(helo=myhost.test.ex)↩
+  ␉
              ╰──(tainted)
              ╰──(tainted)
- ├───item-res: from CALLER (helo=myhost.test.ex)
-       
+ ├───item-res: from░CALLER░(helo=myhost.test.ex)↩
+ ␉
             ╰──(tainted)
             ╰──(tainted)
- ├considering: by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: by 
- ├considering: $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering:  ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text:  
- ├considering: ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├considering: by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: by░
+ ├considering: $primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: myhost.test.ex
+ ├considering: ░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: ░
+ ├considering: ${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:received_protocol
  ├─────result: true
  ├──condition: def:received_protocol
  ├─────result: true
-  ╭considering: with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: with 
-  ├considering: $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├considering:  }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text:  
-  ├considering: }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: with $received_protocol 
-  ╰─────result: with local-esmtp 
- ├───item-res: with local-esmtp 
+  ╭considering: with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: with░
+  ├considering: $received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value: local-esmtp
+  ├considering: ░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: ░
+  ├considering: }}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: with░$received_protocol░
+  ╰─────result: with░local-esmtp░
+ ├───item-res: with░local-esmtp░
             ╰──(tainted)
             ╰──(tainted)
- ├considering: ${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding:  ($tls_in_ver)
-  ├─────result:  ()
+ ├considering: ${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: ░($tls_in_ver)
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
- ├considering: ${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
      for $received_for}}
+ ├considering: ${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
␉for░$received_for}}
  ├──condition: def:tls_in_cipher_std
  ├─────result: false
  ├──condition: def:tls_in_cipher_std
  ├─────result: false
-  ╭───scanning:  tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text:  tls 
-  ├───scanning: $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───scanning
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80â\94\80â\94\80text: 
-       
-  â\94\9câ\94\80â\94\80â\94\80scanning: }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  â\94\9câ\94\80â\94\80expanding:  tls $tls_in_cipher_std
-       
-  â\94\9câ\94\80â\94\80â\94\80â\94\80â\94\80result:  tls 
-       
+  ╭───scanning: ░tls░$tls_in_cipher_std↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: ░tls░
+  ├───scanning: $tls_in_cipher_std
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value
+  ├───scanning: ↩
+  ␉}}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───────text: ↩
+  â\90\89
+  ├───scanning: }}(Exim░$version_number)↩
+  ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  â\90\89forâ\96\91$received_for}}
+  ├───expanded: ░tls░$tls_in_cipher_std↩
+  â\90\89
+  ├─────result:  ◀skipped▶
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
   ╰───skipping: result is not used
  ├───item-res: 
             ╰──(tainted)
- ├considering: (Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: (Exim 
- ├considering: $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering: )
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: )
-       
- ├considering: ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
+ ├considering: (Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: (Exim░
+ ├considering: $version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: x.yz
+ ├considering: )↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: )↩
+ ␉
+ ├considering: ${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:sender_address
  ├─────result: true
  ├──condition: def:sender_address
  ├─────result: true
-  ╭considering: (envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: (envelope-from <
-  ├considering: $sender_address>)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├considering: >)
-       }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├───────text: >)
-       
-  ├considering: }}id $message_exim_id${if def:received_for {
-       for $received_for}}
-  ├──expanding: (envelope-from <$sender_address>)
-       
-  ╰─────result: (envelope-from <CALLER@myhost.test.ex>)
-       
- ├───item-res: (envelope-from <CALLER@myhost.test.ex>)
-       
+  ╭considering: (envelope-from░<$sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: (envelope-from░<
+  ├considering: $sender_address>)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├──────value: CALLER@myhost.test.ex
+  ├considering: >)↩
+  ␉}}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───────text: >)↩
+  ␉
+  ├considering: }}id░$message_exim_id${if░def:received_for░{↩
+  ␉for░$received_for}}
+  ├───expanded: (envelope-from░<$sender_address>)↩
+  ␉
+  ╰─────result: (envelope-from░<CALLER@myhost.test.ex>)↩
+  ␉
+ ├───item-res: (envelope-from░<CALLER@myhost.test.ex>)↩
+ ␉
             ╰──(tainted)
             ╰──(tainted)
- ├considering: id $message_exim_id${if def:received_for {
-       for $received_for}}
- ├───────text: id 
- ├considering: $message_exim_id${if def:received_for {
-       for $received_for}}
- ├considering: ${if def:received_for {
-       for $received_for}}
+ ├considering: id░$message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├───────text: id░
+ ├considering: $message_exim_id${if░def:received_for░{↩
+ ␉for░$received_for}}
+ ├──────value: 10HmbB-000000005vi-0000
+ ├considering: ${if░def:received_for░{↩
+ ␉for░$received_for}}
  ├──condition: def:received_for
  ├─────result: true
  ├──condition: def:received_for
  ├─────result: true
-  ╭considering: 
-       for $received_for}}
-  ├───────text: 
-       for 
+  ╭considering: 
+  ␉for░$received_for}}
+  ├───────text: 
+  ␉for░
   ├considering: $received_for}}
   ├considering: $received_for}}
+  ├──────value: usery@domain.com
+             ╰──(tainted)
   ├considering: }}
   ├considering: }}
-  ├──expanding: 
-       for $received_for
-  ╰─────result: 
-       for usery@domain.com
+  ├───expanded: ↩
+  ␉for░$received_for
+  ╰─────result: 
+  ␉for░usery@domain.com
              ╰──(tainted)
              ╰──(tainted)
- ├───item-res: 
      for usery@domain.com
+ ├───item-res: 
␉for░usery@domain.com
             ╰──(tainted)
             ╰──(tainted)
- ├──expanding: Received: ${if def:sender_rcvhost {from $sender_rcvhost
-       }{${if def:sender_ident {from ${quote_local_part:$sender_ident} }}${if def:sender_helo_name {(helo=$sender_helo_name)
-       }}}}by $primary_hostname ${if def:received_protocol {with $received_protocol }}${if def:tls_in_ver        { ($tls_in_ver)}}${if def:tls_in_cipher_std { tls $tls_in_cipher_std
-       }}(Exim $version_number)
-       ${if def:sender_address {(envelope-from <$sender_address>)
-       }}id $message_exim_id${if def:received_for {
      for $received_for}}
- ╰─────result: Received: from CALLER (helo=myhost.test.ex)
-       by myhost.test.ex with local-esmtp (Exim x.yz)
-       (envelope-from <CALLER@myhost.test.ex>)
-       id 10HmbB-0005vi-00
      for usery@domain.com
+ ├───expanded: Received:░${if░def:sender_rcvhost░{from░$sender_rcvhost↩
+ ␉}{${if░def:sender_ident░{from░${quote_local_part:$sender_ident}░}}${if░def:sender_helo_name░{(helo=$sender_helo_name)↩
+ ␉}}}}by░$primary_hostname░${if░def:received_protocol░{with░$received_protocol░}}${if░def:tls_in_ver░░░░░░░░{░($tls_in_ver)}}${if░def:tls_in_cipher_std░{░tls░$tls_in_cipher_std↩
+ ␉}}(Exim░$version_number)↩
+ ␉${if░def:sender_address░{(envelope-from░<$sender_address>)↩
+ ␉}}id░$message_exim_id${if░def:received_for░{↩
␉for░$received_for}}
+ ╰─────result: Received:░from░CALLER░(helo=myhost.test.ex)↩
+ ␉by░myhost.test.ex░with░local-esmtp░(Exim░x.yz)↩
+ ␉(envelope-from░<CALLER@myhost.test.ex>)↩
+ ␉id░10HmbB-000000005vi-0000↩
␉for░usery@domain.com
             ╰──(tainted)
 ----------- start cutthrough headers send -----------
 ----------- done cutthrough headers send ------------
             ╰──(tainted)
 ----------- start cutthrough headers send -----------
 ----------- done cutthrough headers send ------------
+try option acl_smtp_data
  ╭considering: ${tod_full}
  ╭considering: ${tod_full}
- ├──expanding: ${tod_full}
- ╰─────result: Tue, 2 Mar 1999 09:44:33 +0000
+ ├───expanded: ${tod_full}
+ ╰─────result: Tue,░2░Mar░1999░09:44:33░+0000
   SMTP>> .
   SMTP>> .
-  SMTP<< 250 OK id=10HmbC-0005vi-00
+  SMTP<< 250 OK id=10HmbC-000000005vi-0000
 LOG: MAIN
 LOG: MAIN
-  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-0005vi-00"
+  >> usery@domain.com R=all T=smtp H=127.0.0.1 [127.0.0.1] C="250 OK id=10HmbC-000000005vi-0000"
   SMTP>> QUIT
   SMTP<< 221 myhost.test.ex closing connection
   SMTP(close)>>
   SMTP>> QUIT
   SMTP<< 221 myhost.test.ex closing connection
   SMTP(close)>>
@@ -1677,8 +1868,9 @@ LOG: MAIN
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 LOG: MAIN
   Completed
   <= CALLER@myhost.test.ex U=CALLER P=local-esmtp S=sss
 LOG: MAIN
   Completed
+try option acl_smtp_quit
 LOG: smtp_connection MAIN
 LOG: smtp_connection MAIN
-  SMTP connection from CALLER closed by QUIT
+  SMTP connection from CALLER D=qqs closed by QUIT
 >>>>>>>>>>>>>>>> Exim pid=p1237 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 
 ******** SERVER ********
 >>>>>>>>>>>>>>>> Exim pid=p1237 (fresh-exec) terminating with rc=0 >>>>>>>>>>>>>>>>
 
 ******** SERVER ********