rultor.com logo This build log was produced by rultor.com for objectionary/phino#523
++ dirname ./run.sh
+ cd .
+ echo 1301
+ echo '2.0-SNAPSHOT BUILD'
2.0-SNAPSHOT BUILD
+ date
Thu Dec 11 13:09:54 UTC 2025
+ uptime
 13:09:54 up 1 min,  0 users,  load average: 1.45, 0.46, 0.16
+ ff=default
+ image=maxonfjvipon/rultor-image-hs:master
+ rebase=false
+ head_branch=master
+ pull_title='bug(#522): does not print `\phiMeet{}` twice'
+ author=maxonfjvipon
+ directory=
+ head=git@github.com:objectionary/phino.git
+ pull_id=523
+ fork=git@github.com:maxonfjvipon/phino.git
+ fork_branch=bug/#522/phi-meet-twice
+ squash=false
+ vars=('--env=head=git@github.com:objectionary/phino.git' '--env=pull_id=523' '--env=fork=git@github.com:maxonfjvipon/phino.git' '--env=fork_branch=bug/#522/phi-meet-twice' '--env=head_branch=master' '--env=pull_title=bug(#522): does not print `\phiMeet{}` twice' '--env=author=maxonfjvipon' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:objectionary/phino.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=523'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:maxonfjvipon/phino.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=bug/#522/phi-meet-twice'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=bug(#522): does not print `\phiMeet{}` twice'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=maxonfjvipon'\''\'\'''\'''\'' '\'';'\'' '\''cabal --version'\'' '\'';'\'' '\''ghc --version'\'' '\'';'\'' '\''cabal update'\'' '\'';'\'' '\''pdd -f /dev/null -v'\'' '\'';'\'' '\''cabal build'\'' '\'';'\'' '\''make'\'' '\'';'\'' )')
+ scripts=('export '\''head=git@github.com:objectionary/phino.git'\''' ';' 'export '\''pull_id=523'\''' ';' 'export '\''fork=git@github.com:maxonfjvipon/phino.git'\''' ';' 'export '\''fork_branch=bug/#522/phi-meet-twice'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=bug(#522): does not print `\phiMeet{}` twice'\''' ';' 'export '\''author=maxonfjvipon'\''' ';' 'cabal --version' ';' 'ghc --version' ';' 'cabal update' ';' 'pdd -f /dev/null -v' ';' 'cabal build' ';' 'make' ';')
+ container=objectionary_phino_523
+ as_root=true
+ set -e -o pipefail
+ hostname
ip-172-31-28-103
+ pwd
/tmp/rultor-Zg2a
+ git --version
git version 2.34.1
+ docker --version
Docker version 25.0.3, build 4debf41
+ mkdir -p /home/ubuntu/.ssh
+ echo -e 'Host github.com\n\tStrictHostKeyChecking no\n'
+ chmod 600 /home/ubuntu/.ssh/config
+ git clone --recurse-submodules git@github.com:objectionary/phino.git repo
Cloning into 'repo'...
Warning: Permanently added 'github.com' (ED25519) to the list of known hosts.
+ cd repo
+ git config user.email gpg@rultor.com
+ git config user.name Rultor.com
+ '[' -z 'export '\''head=git@github.com:objectionary/phino.git'\''' ']'
+ cd ..
+ cat
+ '[' true = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'export '\''head=git@github.com:objectionary/phino.git'\''' ';' 'export '\''pull_id=523'\''' ';' 'export '\''fork=git@github.com:maxonfjvipon/phino.git'\''' ';' 'export '\''fork_branch=bug/#522/phi-meet-twice'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''pull_title=bug(#522): does not print `\phiMeet{}` twice'\''' ';' 'export '\''author=maxonfjvipon'\''' ';' 'cabal --version' ';' 'ghc --version' ';' 'cabal update' ';' 'pdd -f /dev/null -v' ';' 'cabal build' ';' make ';'
+ sensitive=()
+ set -ex -o pipefail
+ cd repo
+ git remote add fork git@github.com:maxonfjvipon/phino.git
+ git remote update
Fetching origin
Fetching fork
From github.com:maxonfjvipon/phino
 * [new branch]      bug/#163/cst             -> fork/bug/#163/cst
 * [new branch]      bug/#163/suboptimal-sweet-formating -> fork/bug/#163/suboptimal-sweet-formating
 * [new branch]      bug/#194/steps-dir       -> fork/bug/#194/steps-dir
 * [new branch]      bug/#196/phi-again       -> fork/bug/#196/phi-again
 * [new branch]      bug/#313/log-lines       -> fork/bug/#313/log-lines
 * [new branch]      bug/#393/sequence        -> fork/bug/#393/sequence
 * [new branch]      bug/#393/to-latex        -> fork/bug/#393/to-latex
 * [new branch]      bug/#394/flat-flag       -> fork/bug/#394/flat-flag
 * [new branch]      bug/#394/flat-prep       -> fork/bug/#394/flat-prep
 * [new branch]      bug/#395/leads-to        -> fork/bug/#395/leads-to
 * [new branch]      bug/#399/macos-intel     -> fork/bug/#399/macos-intel
 * [new branch]      bug/#401/doc-about-xmir  -> fork/bug/#401/doc-about-xmir
 * [new branch]      bug/#403/formation-with-inline-voids -> fork/bug/#403/formation-with-inline-voids
 * [new branch]      bug/#404/print-to-ascii  -> fork/bug/#404/print-to-ascii
 * [new branch]      bug/#405/single-line     -> fork/bug/#405/single-line
 * [new branch]      bug/#415/merge-command   -> fork/bug/#415/merge-command
 * [new branch]      bug/#422/leadsto-indented -> fork/bug/#422/leadsto-indented
 * [new branch]      bug/#424/nonumber-in-latex -> fork/bug/#424/nonumber-in-latex
 * [new branch]      bug/#425/pipes-in-latex  -> fork/bug/#425/pipes-in-latex
 * [new branch]      bug/#432/fix-contextualization -> fork/bug/#432/fix-contextualization
 * [new branch]      bug/#433/rewrite-with-expression-in-latex -> fork/bug/#433/rewrite-with-expression-in-latex
 * [new branch]      bug/#435/meta-in-cst     -> fork/bug/#435/meta-in-cst
 * [new branch]      bug/#437/hide-objects    -> fork/bug/#437/hide-objects
 * [new branch]      bug/#440/label-in-phi    -> fork/bug/#440/label-in-phi
 * [new branch]      bug/#441/curled-brackets-in-latex -> fork/bug/#441/curled-brackets-in-latex
 * [new branch]      bug/#444/pipes-in-function-names -> fork/bug/#444/pipes-in-function-names
 * [new branch]      bug/#450/dot-in-latex    -> fork/bug/#450/dot-in-latex
 * [new branch]      bug/#451/ignore-rho-in-primitives-application -> fork/bug/#451/ignore-rho-in-primitives-application
 * [new branch]      bug/#452/dataize-with-sequence -> fork/bug/#452/dataize-with-sequence
 * [new branch]      bug/#457/primitives-to-salty -> fork/bug/#457/primitives-to-salty
 * [new branch]      bug/#469/update-command-in-readme -> fork/bug/#469/update-command-in-readme
 * [new branch]      bug/#471/fix-hide        -> fork/bug/#471/fix-hide
 * [new branch]      bug/#472/canonize-option -> fork/bug/#472/canonize-option
 * [new branch]      bug/#479/nameref-in-dataize -> fork/bug/#479/nameref-in-dataize
 * [new branch]      bug/#480/quite-for-dataize -> fork/bug/#480/quite-for-dataize
 * [new branch]      bug/#481/show-option-for-rewrite -> fork/bug/#481/show-option-for-rewrite
 * [new branch]      bug/#511/meet-prefix     -> fork/bug/#511/meet-prefix
 * [new branch]      bug/#522/phi-meet-twice  -> fork/bug/#522/phi-meet-twice
 * [new branch]      bug/#73/match-command    -> fork/bug/#73/match-command
 * [new branch]      master                   -> fork/master
 * [new branch]      rultor-arch              -> fork/rultor-arch
 * [new branch]      version-up               -> fork/version-up
+ args=()
+ '[' default == default ']'
+ args+=(--ff)
+ '[' default == no ']'
+ '[' default == only ']'
+ '[' false == true ']'
+ BRANCH=__rultor
++ wc -l
++ git show-branch __rultor
+ '[' 0 -gt 0 ']'
+ export BRANCH
+ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
+ git checkout -B __rultor fork/bug/#522/phi-meet-twice
Switched to a new branch '__rultor'
Branch '__rultor' set up to track remote branch 'bug/#522/phi-meet-twice' from 'fork'.
+ git checkout -B master origin/master
Switched to and reset branch 'master'
Branch 'master' set up to track remote branch 'master' from 'origin'.
Your branch is up to date with 'origin/master'.
+ '[' false == true ']'
+ KEY=3FD3FA7E9AF0FA4C
+ git merge --gpg-sign=3FD3FA7E9AF0FA4C --no-edit -m 'bug(#522): does not print `\phiMeet{}` twice' --ff __rultor
Updating d9205e4..0fde713
Fast-forward (no commit created; -m option ignored)
 src/LaTeX.hs      |  8 ++++----
 test/CLISpec.hs   | 13 +++++++++++++
 test/LaTeXSpec.hs |  2 ++
 3 files changed, 19 insertions(+), 4 deletions(-)
+ git log -1 --show-signature
commit 0fde713a7dafd29538cd5833c699c911e6f919ba
gpg: Signature made Thu Dec 11 12:38:21 2025 UTC
gpg:                using RSA key 34854A7D27EB668EBDE094C7D8563899D473D273
gpg: Can't check signature: No public key
Author: maxonfjvipon <mtrunnikov@gmail.com>
Date:   Thu Dec 11 15:38:21 2025 +0300

    bug(#522): does not print phiMeet twice
+ docker_when_possible
+ true
++ tail -n 1
++ sed 's/ /\n/g'
++ uptime
+ load=0.17
++ bc
++ echo 0.17 '>' 30
+ '[' 0 -eq 1 ']'
+ echo 'load average is 0.17, low enough to run a new Docker container'
load average is 0.17, low enough to run a new Docker container
+ break
+ cd ..
+ '[' -n '' ']'
+ use_image=maxonfjvipon/rultor-image-hs:master
+ docker pull maxonfjvipon/rultor-image-hs:master
master: Pulling from maxonfjvipon/rultor-image-hs
437b5b60e3a4: Pulling fs layer
240be374d489: Pulling fs layer
da00f900e37d: Pulling fs layer
fe752c15eaf1: Pulling fs layer
c708ccef4e5d: Pulling fs layer
a776fcefe46a: Pulling fs layer
db7e8c057794: Pulling fs layer
434ff69de94e: Pulling fs layer
484f6e614147: Pulling fs layer
5a59b02cddc4: Pulling fs layer
8ce93dd8dc8c: Pulling fs layer
aec21018fde8: Pulling fs layer
4f4fb700ef54: Pulling fs layer
7d4a2239d113: Pulling fs layer
59940a424721: Pulling fs layer
fe752c15eaf1: Waiting
c708ccef4e5d: Waiting
a776fcefe46a: Waiting
db7e8c057794: Waiting
434ff69de94e: Waiting
484f6e614147: Waiting
5a59b02cddc4: Waiting
8ce93dd8dc8c: Waiting
aec21018fde8: Waiting
4f4fb700ef54: Waiting
7d4a2239d113: Waiting
59940a424721: Waiting
437b5b60e3a4: Verifying Checksum
437b5b60e3a4: Download complete
da00f900e37d: Verifying Checksum
da00f900e37d: Download complete
fe752c15eaf1: Verifying Checksum
fe752c15eaf1: Download complete
240be374d489: Verifying Checksum
240be374d489: Download complete
db7e8c057794: Verifying Checksum
db7e8c057794: Download complete
a776fcefe46a: Verifying Checksum
a776fcefe46a: Download complete
434ff69de94e: Verifying Checksum
434ff69de94e: Download complete
484f6e614147: Verifying Checksum
484f6e614147: Download complete
8ce93dd8dc8c: Verifying Checksum
8ce93dd8dc8c: Download complete
aec21018fde8: Verifying Checksum
aec21018fde8: Download complete
4f4fb700ef54: Verifying Checksum
4f4fb700ef54: Download complete
5a59b02cddc4: Verifying Checksum
5a59b02cddc4: Download complete
59940a424721: Verifying Checksum
59940a424721: Download complete
c708ccef4e5d: Verifying Checksum
c708ccef4e5d: Download complete
7d4a2239d113: Verifying Checksum
7d4a2239d113: Download complete
437b5b60e3a4: Pull complete
240be374d489: Pull complete
da00f900e37d: Pull complete
fe752c15eaf1: Pull complete
c708ccef4e5d: Pull complete
a776fcefe46a: Pull complete
db7e8c057794: Pull complete
434ff69de94e: Pull complete
484f6e614147: Pull complete
5a59b02cddc4: Pull complete
8ce93dd8dc8c: Pull complete
aec21018fde8: Pull complete
4f4fb700ef54: Pull complete
7d4a2239d113: Pull complete
59940a424721: Pull complete
Digest: sha256:19d68dafc749d9f42962726205f4da946c13df88a19fc1f6b56890919c175c97
Status: Downloaded newer image for maxonfjvipon/rultor-image-hs:master
docker.io/maxonfjvipon/rultor-image-hs:master
+ grep --quiet '\sobjectionary_phino_523\s*$'
+ docker ps --filter=status=exited
+ ls -al .
total 52
drwx------  3 ubuntu ubuntu  4096 Dec 11 13:10 .
drwxrwxrwt 12 root   root    4096 Dec 11 13:10 ..
-rwxrwxr-x  1 ubuntu ubuntu   666 Dec 11 13:12 end.sh
-rwxrwxr-x  1 ubuntu ubuntu   170 Dec 11 13:10 entry.sh
-rw-rw-r--  1 ubuntu ubuntu    65 Dec 11 13:09 hackage-auth
-rw-rw-r--  1 ubuntu ubuntu     5 Dec 11 13:09 pid
drwxrwxr-x 11 ubuntu ubuntu  4096 Dec 11 13:10 repo
-rwxrwxr-x  1 ubuntu ubuntu  6673 Dec 11 13:09 run.sh
-rw-rw-r--  1 ubuntu ubuntu   585 Dec 11 13:10 script.sh
-rw-rw-r--  1 ubuntu ubuntu 11289 Dec 11 13:12 stdout
++ pwd
++ pwd
+ docker run -t --rm -v /tmp/rultor-Zg2a:/main --env=head=git@github.com:objectionary/phino.git --env=pull_id=523 --env=fork=git@github.com:maxonfjvipon/phino.git --env=fork_branch=bug/#522/phi-meet-twice --env=head_branch=master '--env=pull_title=bug(#522): does not print `\phiMeet{}` twice' --env=author=maxonfjvipon '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:objectionary/phino.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_id=523'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork=git@github.com:maxonfjvipon/phino.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''fork_branch=bug/#522/phi-meet-twice'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''pull_title=bug(#522): does not print `\phiMeet{}` twice'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=maxonfjvipon'\''\'\'''\'''\'' '\'';'\'' '\''cabal --version'\'' '\'';'\'' '\''ghc --version'\'' '\'';'\'' '\''cabal update'\'' '\'';'\'' '\''pdd -f /dev/null -v'\'' '\'';'\'' '\''cabal build'\'' '\'';'\'' '\''make'\'' '\'';'\'' )' --hostname=docker --privileged --net=host --dns 8.8.8.8 --add-host docker:127.0.0.1 --memory=8g --memory-swap=16g --oom-kill-disable --cidfile=/tmp/rultor-Zg2a/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=objectionary_phino_523 maxonfjvipon/rultor-image-hs:master /main/entry.sh
WARNING: Your kernel does not support OomKillDisable. OomKillDisable discarded.
+ set -e
+ set -o pipefail
+ mkdir /home/r
+ cp -R ./cid ./end.sh ./entry.sh ./hackage-auth ./pid ./repo ./run.sh ./script.sh ./stdout /home/r
+ rm -rf repo
+ chmod a+x /home/r/script.sh
+ /home/r/script.sh
cabal-install version 3.14.1.1
compiled using version 3.14.1.1 of the Cabal library
The Glorious Glasgow Haskell Compilation System, version 9.6.7
Downloading the latest package list from hackage.haskell.org
Package list of hackage.haskell.org has been updated.
The index-state is set to 2025-12-11T11:28:18Z.
To revert to previous state run:
    cabal v2-update 'hackage.haskell.org,2025-12-10T13:12:22Z'
Found 7 lines in /home/r/repo/.pdd
My version is 0.23.1
Ruby version is 3.2.2 at x86_64-linux
Reading from root dir .
Excluding dist-newstyle/**
Excluding .stack-work/**
/usr/local/rvm/gems/ruby-3.2.2/gems/pdd-0.23.1/lib/pdd/sources.rb:90: warning: undefining the allocator of T_DATA class FileMagic
/home/r/repo/assets/contextualize.jpg is a binary file (29523 bytes)
/home/r/repo/renovate.json is a binary file (114 bytes)
Reading .0pdd.yml ...
Reading .gitattributes ...
Reading .github/typos.toml ...
Reading .github/workflows/actionlint.yml ...
Reading .github/workflows/cabal.yml ...
Reading .github/workflows/codecov.yml ...
Reading .github/workflows/copyrights.yml ...
Reading .github/workflows/fourmolu.yml ...
Reading .github/workflows/haddock.yml ...
Reading .github/workflows/hlint.yml ...
Reading .github/workflows/markdown-lint.yml ...
Reading .github/workflows/pdd.yml ...
Reading .github/workflows/release-binary.yml ...
Reading .github/workflows/resources.yml ...
Reading .github/workflows/reuse.yml ...
Reading .github/workflows/shellcheck.yml ...
Reading .github/workflows/stack.yml ...
Reading .github/workflows/titles.yml ...
Reading .github/workflows/typos.yml ...
Reading .github/workflows/up.yml ...
Reading .github/workflows/xcop.yml ...
Reading .github/workflows/yamllint.yml ...
Reading .gitignore ...
Reading .hlint.yaml ...
Reading .pdd ...
Reading .rultor.yml ...
Reading LICENSES/MIT.txt ...
Reading Makefile ...
Reading README.md ...
Reading REUSE.toml ...
Reading app/Main.hs ...
Reading fourmolu.yaml ...
Reading phino.cabal ...
Reading resources/alpha.yaml ...
Reading resources/copy.yaml ...
Reading resources/dc.yaml ...
Reading resources/dd.yaml ...
Reading resources/dot.yaml ...
Reading resources/miss.yaml ...
Reading resources/null.yaml ...
Reading resources/over.yaml ...
Reading resources/phi.yaml ...
Reading resources/stay.yaml ...
Reading resources/stop.yaml ...
Reading src/AST.hs ...
Reading src/Builder.hs ...
Reading src/CLI.hs ...
Reading src/CST.hs ...
Reading src/Canonizer.hs ...
Reading src/Condition.hs ...
Reading src/Dataize.hs ...
Reading src/Deps.hs ...
Reading src/Encoding.hs ...
Reading src/Filter.hs ...
Reading src/Functions.hs ...
Reading src/LaTeX.hs ...
Puzzle 114-f84542df 30/DEV at src/LaTeX.hs
Puzzle 114-ca47c25c 30/DEV at src/LaTeX.hs
Reading src/Lining.hs ...
Reading src/Logger.hs ...
Reading src/Matcher.hs ...
Reading src/Merge.hs ...
Reading src/Misc.hs ...
Reading src/Must.hs ...
Reading src/Parser.hs ...
Reading src/Printer.hs ...
Reading src/Random.hs ...
Reading src/Regexp.hs ...
Reading src/Render.hs ...
Reading src/Replacer.hs ...
Reading src/Rewriter.hs ...
Reading src/Rule.hs ...
Reading src/Sugar.hs ...
Reading src/XMIR.hs ...
Reading src/Yaml.hs ...
Reading stack.yaml ...
Reading stack.yaml.lock ...
Reading test/ASTSpec.hs ...
Reading test/BuilderSpec.hs ...
Reading test/CLISpec.hs ...
Reading test/CSTSpec.hs ...
Reading test/ConditionSpec.hs ...
Reading test/DataizeSpec.hs ...
Reading test/FilterSpec.hs ...
Reading test/FunctionsSpec.hs ...
Reading test/LaTeXSpec.hs ...
Reading test/Main.hs ...
Reading test/MatcherSpec.hs ...
Reading test/MergeSpec.hs ...
Reading test/MiscSpec.hs ...
Reading test/MustSpec.hs ...
Reading test/ParserSpec.hs ...
Reading test/PrinterSpec.hs ...
Reading test/README.md ...
Reading test/RandomSpec.hs ...
Reading test/ReplacerSpec.hs ...
Reading test/RewriterSpec.hs ...
Reading test/RuleSpec.hs ...
Reading test/Spec.hs ...
Reading test/SugarSpec.hs ...
Reading test/XMIRSpec.hs ...
Reading test/YamlSpec.hs ...
Reading test-resources/cli/bytes.phi ...
Reading test-resources/cli/desugar.phi ...
Reading test-resources/cli/dispatch.phi ...
Reading test-resources/cli/first.yaml ...
Reading test-resources/cli/foo.phi ...
Reading test-resources/cli/infinite.yaml ...
Reading test-resources/cli/normalize.phi ...
Reading test-resources/cli/number.phi ...
Reading test-resources/cli/second.yaml ...
Reading test-resources/cli/simple.yaml ...
Reading test-resources/cli/string.phi ...
Reading test-resources/cli/with-$this-attribute.phi ...
Reading test-resources/condition-packs/alpha-simple.yaml ...
Reading test-resources/condition-packs/eq-to-rho.yaml ...
Reading test-resources/condition-packs/eq-with-attributes.yaml ...
Reading test-resources/condition-packs/eq-with-expressions.yaml ...
Reading test-resources/condition-packs/eq-with-formations.yaml ...
Reading test-resources/condition-packs/eq-with-two-meta-attributes.yaml ...
Reading test-resources/condition-packs/eq-with-two-meta-expressions.yaml ...
Reading test-resources/condition-packs/length.yaml ...
Reading test-resources/condition-packs/matches-with-line-bounds.yaml ...
Reading test-resources/condition-packs/matches.yaml ...
Reading test-resources/condition-packs/nf-dot-recursive.yaml ...
Reading test-resources/condition-packs/nf-on-dot.yaml ...
Reading test-resources/condition-packs/nf-simple.yaml ...
Reading test-resources/condition-packs/not-nf-on-dd.yaml ...
Reading test-resources/condition-packs/not-nf-on-phi.yaml ...
Reading test-resources/condition-packs/or.yaml ...
Reading test-resources/condition-packs/ordinal.yaml ...
Reading test-resources/condition-packs/stop.yaml ...
Reading test-resources/cst/printing-packs/basic.yaml ...
Reading test-resources/cst/printing-packs/dispatch.yaml ...
Reading test-resources/cst/printing-packs/jeo.yaml ...
Reading test-resources/cst/printing-packs/primitives-without-rhos.yaml ...
Reading test-resources/cst/printing-packs/simple.yaml ...
Reading test-resources/cst/printing-packs/sweet-inlined.yaml ...
Reading test-resources/cst/printing-packs/with-void-rho-between.yaml ...
Reading test-resources/cst/printing-packs/xi-attribute.yaml ...
Reading test-resources/cst/to-ascii-packs/complex.yaml ...
Reading test-resources/cst/to-salty-packs/application-with-alphas.yaml ...
Reading test-resources/cst/to-salty-packs/application.yaml ...
Reading test-resources/cst/to-salty-packs/default-package.yaml ...
Reading test-resources/cst/to-salty-packs/primitives-with-rhos.yaml ...
Reading test-resources/cst/to-salty-packs/with-inlined-voids.yaml ...
Reading test-resources/cst/to-salty-packs/with-num-and-void-rho.yaml ...
Reading test-resources/cst/to-salty-packs/xi-attr.yaml ...
Reading test-resources/cst/to-singleline-packs/application.yaml ...
Reading test-resources/cst/to-singleline-packs/empty-formation.yaml ...
Reading test-resources/cst/to-singleline-packs/with-inlined-voids.yaml ...
Reading test-resources/filter-packs/complex.yaml ...
Reading test-resources/filter-packs/org-eolang.yaml ...
Reading test-resources/filter-packs/show-hide.yaml ...
Reading test-resources/filter-packs/show.yaml ...
Reading test-resources/filter-packs/simple.yaml ...
Reading test-resources/filter-packs/stop.yaml ...
Reading test-resources/filter-packs/with-attributes.yaml ...
Reading test-resources/filter-packs/with-void.yaml ...
Reading test-resources/parser-packs/all-the-basics.phi ...
Reading test-resources/parser-packs/ascii-with-braces.phi ...
Reading test-resources/parser-packs/ascii-with-global.phi ...
Reading test-resources/parser-packs/inline-voids.phi ...
Reading test-resources/parser-packs/primitive.phi ...
Reading test-resources/parser-packs/salty-fibo.phi ...
Reading test-resources/parser-packs/simple.phi ...
Reading test-resources/parser-packs/sweet-fibo.phi ...
Reading test-resources/parser-packs/virtual-map.phi ...
Reading test-resources/phi-typos-packs/delta-in-application.phi ...
Reading test-resources/phi-typos-packs/duplicated-attributes.phi ...
Reading test-resources/phi-typos-packs/wrong-function-name.phi ...
Reading test-resources/rewriter-packs/basic/alpha-first.yaml ...
Reading test-resources/rewriter-packs/basic/alpha-fourth.yaml ...
Reading test-resources/rewriter-packs/basic/alpha-second.yaml ...
Reading test-resources/rewriter-packs/basic/alpha-simple.yaml ...
Reading test-resources/rewriter-packs/basic/alpha-stops-at-idx.yaml ...
Reading test-resources/rewriter-packs/basic/alpha-stops-at-length.yaml ...
Reading test-resources/rewriter-packs/basic/copy-paper-e1.yaml ...
Reading test-resources/rewriter-packs/basic/copy-paper-e4-dispatch.yaml ...
Reading test-resources/rewriter-packs/basic/copy-simple.yaml ...
Reading test-resources/rewriter-packs/basic/copy-with-tail.yaml ...
Reading test-resources/rewriter-packs/basic/dc-from-paper.yaml ...
Reading test-resources/rewriter-packs/basic/dc-in-subformation.yaml ...
Reading test-resources/rewriter-packs/basic/dd.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e2.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e3-1.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e3-2.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e4-1.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e4-2.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e5-1.yaml ...
Reading test-resources/rewriter-packs/basic/dot-paper-e5-2.yaml ...
Reading test-resources/rewriter-packs/basic/dot-recursive.yaml ...
Reading test-resources/rewriter-packs/basic/dot-with-dd.yaml ...
Reading test-resources/rewriter-packs/basic/dot-xi.yaml ...
Reading test-resources/rewriter-packs/basic/miss-from-paper.yaml ...
Reading test-resources/rewriter-packs/basic/miss-on-empty.yaml ...
Reading test-resources/rewriter-packs/basic/null-from-parer.yaml ...
Reading test-resources/rewriter-packs/basic/over-alone.yaml ...
Reading test-resources/rewriter-packs/basic/over-from-paper.yaml ...
Reading test-resources/rewriter-packs/basic/over-in-back.yaml ...
Reading test-resources/rewriter-packs/basic/over-in-front.yaml ...
Reading test-resources/rewriter-packs/basic/over-inside.yaml ...
Reading test-resources/rewriter-packs/basic/over-long-binding.yaml ...
Reading test-resources/rewriter-packs/basic/over-with-rho.yaml ...
Reading test-resources/rewriter-packs/basic/over-without-over.yaml ...
Reading test-resources/rewriter-packs/basic/phi-from-paper.yaml ...
Reading test-resources/rewriter-packs/basic/stay.yaml ...
Reading test-resources/rewriter-packs/basic/stop-at-lambda.yaml ...
Reading test-resources/rewriter-packs/basic/stop-at-phi.yaml ...
Reading test-resources/rewriter-packs/basic/stop-from-paper.yaml ...
Reading test-resources/rewriter-packs/custom/attribute-from-string.yaml ...
Reading test-resources/rewriter-packs/custom/concat-from-expression.yaml ...
Reading test-resources/rewriter-packs/custom/dataize-and-concat.yaml ...
Reading test-resources/rewriter-packs/custom/desugar-fibo.yaml ...
Reading test-resources/rewriter-packs/custom/desugar-strings.yaml ...
Reading test-resources/rewriter-packs/custom/desugares-without-match.yaml ...
Reading test-resources/rewriter-packs/custom/desugares.yaml ...
Reading test-resources/rewriter-packs/custom/does-not-fail-on-ambiguous.yaml ...
Reading test-resources/rewriter-packs/custom/java-boxed-method.yaml ...
Reading test-resources/rewriter-packs/custom/negative-condition.yaml ...
Reading test-resources/rewriter-packs/custom/nested-part-of.yaml ...
Reading test-resources/rewriter-packs/custom/number.yaml ...
Reading test-resources/rewriter-packs/custom/part-of-after.yaml ...
Reading test-resources/rewriter-packs/custom/part-of.yaml ...
Reading test-resources/rewriter-packs/custom/replaces-all-in-inner-cycle.yaml ...
Reading test-resources/rewriter-packs/custom/replaces-formation-in-one-cycle.yaml ...
Reading test-resources/rewriter-packs/custom/same-exprs-in-formation.yaml ...
Reading test-resources/rewriter-packs/custom/sed-with-many-arguments.yaml ...
Reading test-resources/rewriter-packs/custom/sed-with-slashes.yaml ...
Reading test-resources/rewriter-packs/custom/sed.yaml ...
Reading test-resources/rewriter-packs/custom/size-of-bindings.yaml ...
Reading test-resources/rewriter-packs/custom/string.yaml ...
Reading test-resources/rewriter-packs/custom/sum.yaml ...
Reading test-resources/rewriter-packs/custom/with-alpha-condition.yaml ...
Reading test-resources/rewriter-packs/custom/with-complex-condition.yaml ...
Reading test-resources/rewriter-packs/custom/with-different-metas.yaml ...
Reading test-resources/rewriter-packs/custom/with-eq-condition.yaml ...
Reading test-resources/rewriter-packs/custom/with-meta-names.yaml ...
Reading test-resources/rewriter-packs/custom/with-program-scope.yaml ...
Reading test-resources/rewriter-packs/custom/with-scope.yaml ...
Reading test-resources/rewriter-packs/custom/with-simple-condition.yaml ...
Reading test-resources/rewriter-packs/normalize/e-ald.yaml ...
Reading test-resources/rewriter-packs/normalize/e-alp.yaml ...
Reading test-resources/rewriter-packs/normalize/e-app.yaml ...
Reading test-resources/rewriter-packs/normalize/e-cpy.yaml ...
Reading test-resources/rewriter-packs/normalize/e-fnk.yaml ...
Reading test-resources/rewriter-packs/normalize/e-int.yaml ...
Reading test-resources/rewriter-packs/normalize/e-lam.yaml ...
Reading test-resources/rewriter-packs/normalize/e-nf.yaml ...
Reading test-resources/rewriter-packs/normalize/e-nk.yaml ...
Reading test-resources/rewriter-packs/normalize/e-np.yaml ...
Reading test-resources/rewriter-packs/normalize/e-nr.yaml ...
Reading test-resources/rewriter-packs/normalize/e-nt.yaml ...
Reading test-resources/rewriter-packs/normalize/e-phi.yaml ...
Reading test-resources/rewriter-packs/normalize/e-rep.yaml ...
Reading test-resources/rewriter-packs/normalize/e-rha.yaml ...
Reading test-resources/rewriter-packs/normalize/e-rhi.yaml ...
Reading test-resources/rewriter-packs/normalize/e-rho.yaml ...
Reading test-resources/rewriter-packs/normalize/e-twi.yaml ...
Reading test-resources/rewriter-packs/normalize/e-xxi.yaml ...
Reading test-resources/xmir-parsing-packs/application-with-dispatch.yaml ...
Reading test-resources/xmir-parsing-packs/application.yaml ...
Reading test-resources/xmir-parsing-packs/atoms.yaml ...
Reading test-resources/xmir-parsing-packs/base-dispatch.yaml ...
Reading test-resources/xmir-parsing-packs/formation-dispatch.yaml ...
Reading test-resources/xmir-parsing-packs/formation.yaml ...
Reading test-resources/xmir-parsing-packs/reverse-dispatch.yaml ...
Reading test-resources/xmir-parsing-packs/simple.yaml ...
Reading test-resources/xmir-parsing-packs/with-duplicate-attribute.yaml ...
Reading test-resources/xmir-parsing-packs/with-package.yaml ...
Reading test-resources/xmir-parsing-packs/with-phi.yaml ...
Reading test-resources/xmir-printing-packs/application.yaml ...
Reading test-resources/xmir-printing-packs/simple.yaml ...
Reading test-resources/yaml-packs/simple.yaml ...
Reading test-resources/yaml-packs/special-attrs-in-condition.yaml ...
Reading test-resources/yaml-packs/when.yaml ...
Reading test-resources/yaml-typos/two-condition-objects.yaml ...
Reading test-resources/yaml-typos/wrong-condition-name.yaml ...
Resolving dependencies...
Build profile: -w ghc-9.6.7 -O1
In order, the following will be built (use -v for more details):
 - phino-0.0.0.0 (lib) (first run)
 - phino-0.0.0.0 (exe:phino) (first run)
Configuring library for phino-0.0.0.0...
Preprocessing library for phino-0.0.0.0...
Building library for phino-0.0.0.0...
[ 1 of 30] Compiling AST              ( src/AST.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/AST.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/AST.dyn_o )
[ 2 of 30] Compiling Logger           ( src/Logger.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Logger.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Logger.dyn_o )
[ 3 of 30] Compiling Matcher          ( src/Matcher.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Matcher.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Matcher.dyn_o )
[ 4 of 30] Compiling Misc             ( src/Misc.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Misc.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Misc.dyn_o )
[ 5 of 30] Compiling CST              ( src/CST.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CST.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CST.dyn_o )
[ 6 of 30] Compiling Lining           ( src/Lining.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Lining.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Lining.dyn_o )
[ 7 of 30] Compiling Encoding         ( src/Encoding.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Encoding.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Encoding.dyn_o )
[ 8 of 30] Compiling Must             ( src/Must.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Must.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Must.dyn_o )
[ 9 of 30] Compiling Parser           ( src/Parser.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Parser.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Parser.dyn_o )
[10 of 30] Compiling Paths_phino      ( dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/autogen/Paths_phino.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Paths_phino.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Paths_phino.dyn_o )
[11 of 30] Compiling Random           ( src/Random.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Random.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Random.dyn_o )
[12 of 30] Compiling Regexp           ( src/Regexp.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Regexp.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Regexp.dyn_o )
[13 of 30] Compiling Render           ( src/Render.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Render.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Render.dyn_o )
[14 of 30] Compiling Sugar            ( src/Sugar.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Sugar.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Sugar.dyn_o )
[15 of 30] Compiling Yaml             ( src/Yaml.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Yaml.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Yaml.dyn_o )
[16 of 30] Compiling Printer          ( src/Printer.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Printer.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Printer.dyn_o )
[17 of 30] Compiling XMIR             ( src/XMIR.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/XMIR.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/XMIR.dyn_o )
[18 of 30] Compiling Replacer         ( src/Replacer.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Replacer.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Replacer.dyn_o )
[19 of 30] Compiling Deps             ( src/Deps.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Deps.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Deps.dyn_o )
[20 of 30] Compiling Merge            ( src/Merge.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Merge.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Merge.dyn_o )
[21 of 30] Compiling Condition        ( src/Condition.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Condition.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Condition.dyn_o )
[22 of 30] Compiling Builder          ( src/Builder.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Builder.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Builder.dyn_o )
[23 of 30] Compiling Rule             ( src/Rule.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rule.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rule.dyn_o )
[24 of 30] Compiling Rewriter         ( src/Rewriter.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rewriter.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rewriter.dyn_o )
[25 of 30] Compiling LaTeX            ( src/LaTeX.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/LaTeX.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/LaTeX.dyn_o )
[26 of 30] Compiling Filter           ( src/Filter.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Filter.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Filter.dyn_o )
[27 of 30] Compiling Canonizer        ( src/Canonizer.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Canonizer.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Canonizer.dyn_o )
[28 of 30] Compiling Functions        ( src/Functions.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Functions.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Functions.dyn_o )
[29 of 30] Compiling Dataize          ( src/Dataize.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Dataize.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Dataize.dyn_o )
[30 of 30] Compiling CLI              ( src/CLI.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CLI.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CLI.dyn_o )
Configuring executable 'phino' for phino-0.0.0.0...
Preprocessing executable 'phino' for phino-0.0.0.0...
Building executable 'phino' for phino-0.0.0.0...
[1 of 1] Compiling Main             ( app/Main.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/x/phino/build/phino/phino-tmp/Main.o )
[2 of 2] Linking dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/x/phino/build/phino/phino
Build profile: -w ghc-9.6.7 -O1
In order, the following will be built (use -v for more details):
 - hspec-discover-2.11.15 (exe:hspec-discover) (requires build)
 - phino-0.0.0.0 (lib) (configuration changed)
 - phino-0.0.0.0 (test:spec) (first run)
Configuring executable 'hspec-discover' for hspec-discover-2.11.15...
Preprocessing executable 'hspec-discover' for hspec-discover-2.11.15...
Building executable 'hspec-discover' for hspec-discover-2.11.15...
[1 of 2] Compiling Main             ( driver/hspec-discover.hs, dist/build/hspec-discover/hspec-discover-tmp/Main.o )
[2 of 2] Compiling Paths_hspec_discover ( dist/build/hspec-discover/autogen/Paths_hspec_discover.hs, dist/build/hspec-discover/hspec-discover-tmp/Paths_hspec_discover.o )
[3 of 3] Linking dist/build/hspec-discover/hspec-discover
Installing executable hspec-discover in /opt/cabal/store/ghc-9.6.7/incoming/new-406/opt/cabal/store/ghc-9.6.7/hspec-discover-2.11.15-e-hspec-discover-af158bfbbf69bf8015ce3fec089158060a5b96013008856f4514865e2cb64823/bin
Warning: The directory
/opt/cabal/store/ghc-9.6.7/incoming/new-406/opt/cabal/store/ghc-9.6.7/hspec-discover-2.11.15-e-hspec-discover-af158bfbbf69bf8015ce3fec089158060a5b96013008856f4514865e2cb64823/bin
is not in the system search path.
Configuring library for phino-0.0.0.0...
Preprocessing library for phino-0.0.0.0...
Building library for phino-0.0.0.0...
[ 1 of 30] Compiling AST              ( src/AST.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/AST.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/AST.dyn_o ) [HPC flags changed]
[ 2 of 30] Compiling Logger           ( src/Logger.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Logger.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Logger.dyn_o ) [HPC flags changed]
[ 3 of 30] Compiling Matcher          ( src/Matcher.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Matcher.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Matcher.dyn_o ) [HPC flags changed]
[ 4 of 30] Compiling Misc             ( src/Misc.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Misc.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Misc.dyn_o ) [HPC flags changed]
[ 5 of 30] Compiling CST              ( src/CST.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CST.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CST.dyn_o ) [HPC flags changed]
[ 6 of 30] Compiling Lining           ( src/Lining.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Lining.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Lining.dyn_o ) [HPC flags changed]
[ 7 of 30] Compiling Encoding         ( src/Encoding.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Encoding.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Encoding.dyn_o ) [HPC flags changed]
[ 8 of 30] Compiling Must             ( src/Must.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Must.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Must.dyn_o ) [HPC flags changed]
[ 9 of 30] Compiling Parser           ( src/Parser.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Parser.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Parser.dyn_o ) [HPC flags changed]
[10 of 30] Compiling Paths_phino      ( dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/autogen/Paths_phino.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Paths_phino.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Paths_phino.dyn_o ) [HPC flags changed]
[11 of 30] Compiling Random           ( src/Random.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Random.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Random.dyn_o ) [HPC flags changed]
[12 of 30] Compiling Regexp           ( src/Regexp.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Regexp.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Regexp.dyn_o ) [HPC flags changed]
[13 of 30] Compiling Render           ( src/Render.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Render.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Render.dyn_o ) [HPC flags changed]
[14 of 30] Compiling Sugar            ( src/Sugar.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Sugar.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Sugar.dyn_o ) [HPC flags changed]
[15 of 30] Compiling Yaml             ( src/Yaml.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Yaml.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Yaml.dyn_o ) [HPC flags changed]
[16 of 30] Compiling Printer          ( src/Printer.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Printer.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Printer.dyn_o ) [HPC flags changed]
[17 of 30] Compiling XMIR             ( src/XMIR.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/XMIR.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/XMIR.dyn_o ) [HPC flags changed]
[18 of 30] Compiling Replacer         ( src/Replacer.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Replacer.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Replacer.dyn_o ) [HPC flags changed]
[19 of 30] Compiling Deps             ( src/Deps.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Deps.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Deps.dyn_o ) [HPC flags changed]
[20 of 30] Compiling Merge            ( src/Merge.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Merge.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Merge.dyn_o ) [HPC flags changed]
[21 of 30] Compiling Condition        ( src/Condition.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Condition.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Condition.dyn_o ) [HPC flags changed]
[22 of 30] Compiling Builder          ( src/Builder.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Builder.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Builder.dyn_o ) [HPC flags changed]
[23 of 30] Compiling Rule             ( src/Rule.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rule.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rule.dyn_o ) [HPC flags changed]
[24 of 30] Compiling Rewriter         ( src/Rewriter.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rewriter.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Rewriter.dyn_o ) [HPC flags changed]
[25 of 30] Compiling LaTeX            ( src/LaTeX.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/LaTeX.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/LaTeX.dyn_o ) [HPC flags changed]
[26 of 30] Compiling Filter           ( src/Filter.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Filter.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Filter.dyn_o ) [HPC flags changed]
[27 of 30] Compiling Canonizer        ( src/Canonizer.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Canonizer.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Canonizer.dyn_o ) [HPC flags changed]
[28 of 30] Compiling Functions        ( src/Functions.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Functions.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Functions.dyn_o ) [HPC flags changed]
[29 of 30] Compiling Dataize          ( src/Dataize.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Dataize.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/Dataize.dyn_o ) [HPC flags changed]
[30 of 30] Compiling CLI              ( src/CLI.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CLI.o, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/build/CLI.dyn_o ) [HPC flags changed]
Configuring test suite 'spec' for phino-0.0.0.0...
Preprocessing test suite 'spec' for phino-0.0.0.0...
Building test suite 'spec' for phino-0.0.0.0...
[ 1 of 25] Compiling ASTSpec          ( test/ASTSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/ASTSpec.o )
[ 2 of 25] Compiling BuilderSpec      ( test/BuilderSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/BuilderSpec.o )
[ 3 of 25] Compiling CSTSpec          ( test/CSTSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/CSTSpec.o )
[ 4 of 25] Compiling ConditionSpec    ( test/ConditionSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/ConditionSpec.o )
[ 5 of 25] Compiling DataizeSpec      ( test/DataizeSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/DataizeSpec.o )
[ 6 of 25] Compiling FilterSpec       ( test/FilterSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/FilterSpec.o )
[ 7 of 25] Compiling FunctionsSpec    ( test/FunctionsSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/FunctionsSpec.o )
[ 8 of 25] Compiling LaTeXSpec        ( test/LaTeXSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/LaTeXSpec.o )
[ 9 of 25] Compiling MatcherSpec      ( test/MatcherSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/MatcherSpec.o )
[10 of 25] Compiling MergeSpec        ( test/MergeSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/MergeSpec.o )
[11 of 25] Compiling MiscSpec         ( test/MiscSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/MiscSpec.o )
[12 of 25] Compiling MustSpec         ( test/MustSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/MustSpec.o )
[13 of 25] Compiling ParserSpec       ( test/ParserSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/ParserSpec.o )
[14 of 25] Compiling Paths_phino      ( dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/autogen/Paths_phino.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/Paths_phino.o )
[15 of 25] Compiling CLISpec          ( test/CLISpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/CLISpec.o )
[16 of 25] Compiling PrinterSpec      ( test/PrinterSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/PrinterSpec.o )
[17 of 25] Compiling RandomSpec       ( test/RandomSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/RandomSpec.o )
[18 of 25] Compiling ReplacerSpec     ( test/ReplacerSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/ReplacerSpec.o )
[19 of 25] Compiling RewriterSpec     ( test/RewriterSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/RewriterSpec.o )
[20 of 25] Compiling RuleSpec         ( test/RuleSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/RuleSpec.o )
[21 of 25] Compiling SugarSpec        ( test/SugarSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/SugarSpec.o )
[22 of 25] Compiling XMIRSpec         ( test/XMIRSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/XMIRSpec.o )
[23 of 25] Compiling YamlSpec         ( test/YamlSpec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/YamlSpec.o )
[24 of 25] Compiling Spec             ( test/Spec.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/Spec.o )
[25 of 25] Compiling Main             ( test/Main.hs, dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec-tmp/Main.o )
[26 of 26] Linking dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/build/spec/spec
Running 1 test suites...
Test suite spec: RUNNING...
?25l
AST
  Attribute Show instance renders AtLabel
K7l  simplellabele[32m✔0m]
K7l  unicodedlabele[32m✔0m]
K7l  longnlabele[32m✔0m]
  Attribute Show instance renders AtAlpha
K7l  zerorindexe[32m✔0m]
K7l  positivevindexe[32m✔0m]
K7l  largegindexe[32m✔0m]
  Attribute Show instance renders special attributes
K7l  rhoh[32m✔0m]
K7l  phih[32m✔0m]
K7l  deltat[32m✔0m]
K7l  lambdad[32m✔0m]
  Attribute Show instance renders AtMeta
K7l  simplelmetat[32m✔0m]
K7l  longnmetat[32m✔0m]
K7l  unicodedmetat[32m✔0m]
  Attribute Eq instance compares same constructors
K7l  labelslequala[32m✔0m]
K7l  labelsldiffere[32m✔0m]
K7l  alphasaequala[32m✔0m]
K7l  alphasadiffere[32m✔0m]
K7l  metasaequala[32m✔0m]
K7l  metasadiffere[32m✔0m]
K7l  rhohequalslrhoh[32m✔0m]
K7l  phihequalslphih[32m✔0m]
K7l  deltatequalsldeltat[32m✔0m]
K7l  lambdadequalsllambdad[32m✔0m]
  Attribute Eq instance compares different constructors
K7l  labelevsvalphah[32m✔0m]
K7l  rhohvsvphih[32m✔0m]
K7l  deltatvsvlambdad[32m✔0m]
K7l  metatvsvlabele[32m✔0m]
  Attribute Ord instance orders correctly
K7l  sortstattributesebybconstructoroordere[32m✔0m]
  Bytes Eq instance compares same constructors
K7l  emptytequalslemptyt[32m✔0m]
K7l  onenequalslonen[32m✔0m]
K7l  onendiffersr[32m✔0m]
K7l  manynequalslmanyn[32m✔0m]
K7l  manyndiffersr[32m✔0m]
K7l  metatequalslmetat[32m✔0m]
K7l  metatdiffersr[32m✔0m]
  Bytes Eq instance compares different constructors
K7l  emptytvsvonen[32m✔0m]
K7l  onenvsvmanyn[32m✔0m]
K7l  manynvsvmetat[32m✔0m]
  Bytes Ord instance orders correctly
K7l  sortstbytesebybconstructoroordere[32m✔0m]
  Binding Eq instance compares same constructors
K7l  tauaequalsltaua[32m✔0m]
K7l  tauadiffersrbybattrt[32m✔0m]
K7l  tauadiffersrbybexprp[32m✔0m]
K7l  metatequalslmetat[32m✔0m]
K7l  metatdiffersr[32m✔0m]
K7l  deltatequalsldeltat[32m✔0m]
K7l  deltatdiffersr[32m✔0m]
K7l  voidiequalslvoidi[32m✔0m]
K7l  voididiffersr[32m✔0m]
K7l  lambdadequalsllambdad[32m✔0m]
K7l  lambdaddiffersr[32m✔0m]
K7l  metalambdadequalsl[32m✔0m]
K7l  metalambdaddiffersr[32m✔0m]
  Binding Eq instance compares different constructors
K7l  tauavsvmetat[32m✔0m]
K7l  deltatvsvvoidi[32m✔0m]
K7l  lambdadvsvmetalambdad[32m✔0m]
  Binding Ord instance orders correctly
K7l  sortstbindingsgbybconstructoroordere[32m✔0m]
  Expression Eq instance compares same constructors
K7l  formationoequalsl[32m✔0m]
K7l  formationodiffersr[32m✔0m]
K7l  thisiequalslthisi[32m✔0m]
K7l  globalaequalslglobala[32m✔0m]
K7l  terminationoequalsl[32m✔0m]
K7l  metatequalslmetat[32m✔0m]
K7l  metatdiffersr[32m✔0m]
K7l  applicationoequalsl[32m✔0m]
K7l  dispatchcequalsl[32m✔0m]
K7l  dispatchcdiffersr[32m✔0m]
K7l  metatailiequalsl[32m✔0m]
K7l  metatailidiffersr[32m✔0m]
  Expression Eq instance compares different constructors
K7l  formationovsvthisi[32m✔0m]
K7l  globalavsvterminationo[32m✔0m]
K7l  metatvsvdispatchc[32m✔0m]
  Expression Ord instance orders correctly
K7l  sortstexpressionsnbybconstructoroordere[32m✔0m]
  Program Eq instance compares programs
K7l  samemprogramsmequala[32m✔0m]
K7l  differentnprogramsmdiffere[32m✔0m]
  Program Ord instance orders correctly
K7l  ordersrprogramsmbybexpressiono[32m✔0m]
  Program Show instance renders programs
K7l  showswprogramawrappere[32m✔0m]
  countNodes counts ExGlobal
K7l  returnsnonenforoglobala[32m✔0m]
  countNodes counts ExTermination
K7l  returnsnonenforoterminationo[32m✔0m]
  countNodes counts ExThis
K7l  returnsnonenforothisi[32m✔0m]
  countNodes counts ExDispatch
K7l  returnsnthreeeforodispatchconoglobala[32m✔0m]
  countNodes counts ExApplication
K7l  returnsnfouruforoapplicationowithtglobalsl[32m✔0m]
  countNodes counts ExFormation with tau bindings
K7l  returnsncountnincludingnnestedeexpressionsn[32m✔0m]
  countNodes counts ExFormation with non-tau bindings
K7l  emptytformationo[32m✔0m]
K7l  voidibindingn[32m✔0m]
K7l  deltatbindingn[32m✔0m]
K7l  lambdadbindingn[32m✔0m]
K7l  metatbindingn[32m✔0m]
K7l  metalambdadbindingn[32m✔0m]
  countNodes returns zero for meta expressions
K7l  metatexpressiono[32m✔0m]
K7l  metatailiexpressiono[32m✔0m]
  countNodes counts nested structures
K7l  countstdeeplylnestededispatchc[32m✔0m]
  countNodes counts complex formation
K7l  countstformationowithtdispatchcinsided[32m✔0m]
Builder
  buildExpression
K7l  Q.!a!=>=(!a!>>>x)x=>=Q.x.[32m✔0m]
K7l  Q.c(!a!->-!e)e=>=(!a!>>>x,x!e!>>>$.y.z)z=>=Q.c(x(->-$.y.z)z[32m✔0m]
K7l  [[!a!->-$.x,x!B]]]=>=(!a!>>>y,y!B!>>>[[b[->-?,?L>LFunc]])]=>=[[y[->-$.x,xb ->-?,?L>LFunc]]][32m✔0m]
K7l  Q * !t!=>=(!t!>>>[.a,a.b,b(~1~->-$.x)])]=>=Q.a.b(~1~->-$.x)x[32m✔0m]
K7l  Q.!a!=>=()(=>=X [32m✔0m]
K7l  !e0(!a1a->-!e1,1!a2a=>=!e2)2=>=(!e0e>>>[[]],]!a1a>>>x,x!e1e>>>Q,Q!a2a>>>y,y!e2e>>>$)$=>=[[]](x(->-Q,Qy ->-$)$[32m✔0m]
K7l  ⟦!a!↦ ∅,∅!B⟧.!a!=>=(!a!>>>t,t!B!>>>⟦ x ↦ ξ.t.⟧ ) =>=⟦ t ↦ ∅,∅x ↦ ξ.t.⟧.t.[32m✔0m]
  buildExpressions
K7l  !e!=>=[(!e!>>>Q.x),)(!e!>>>$.y)])=>=[Q.x,x$.y]y[32m✔0m]
K7l  !e!=>=[(!e1e>>>Q.x)])=>=X [32m✔0m]
  build with duplicate attributes in bindings
K7l  buildlbindingnwithtduplicatese[32m✔0m]
K7l  buildlformationowithtduplicatese[32m✔0m]
CLI
K7lprintstversiono[32m✔0m]
K7lprintsthelpl[32m✔0m]
K7lprintstdebuguinfofwitht--log-level=DEBUGU[32m✔0m]
  rewriting
    fails
K7l    witht--input=latexe[32m✔0m]
K7l    withtnegativev--log-linese[32m✔0m]
K7l    withtnegativev--max-deptht[32m✔0m]
K7l    witht--normalizezandn--must=1=[32m✔0m]
K7l    whene--in-placecisiusedewithoutuinputufilel[32m✔0m]
K7l    whene--in-placecisiusedewitht--targete[32m✔0m]
K7l    witht--depth-sensitivev[32m✔0m]
K7l    withtloopingnrulese[32m✔0m]
K7l    withtwrongnattributetandnvalidierroromessageg[32m✔0m]
K7l    witht--outputu!=!latexeandn--nonumbere[32m✔0m]
K7l    witht--omit-listingnandn--outputu!=!xmiri[32m✔0m]
K7l    witht--omit-commentstandn--outputu!=!xmiri[32m✔0m]
K7l    witht--expressionoandn--outputu!=!latexe[32m✔0m]
K7l    witht--labeleandn--outputu!=!latexe[32m✔0m]
K7l    witht--compresssandn--outputu!=!latexe[32m✔0m]
K7l    witht--meet-prefixiandn--outputu!=!latexe[32m✔0m]
K7l    withtwrongn--hidedoptiono[32m✔0m]
K7l    withtmanyn--showooptionsn[32m✔0m]
K7l    withtwrongn--showooptiono[32m✔0m]
K7l  savesestepsptotdiriwitht--steps-diri[32m✔0m]
K7l  desugaresewithoutuanynruleseflagafromofilel[32m✔0m]
K7l  desugaresewithtwithoutuanynruleseflagafromostdini[32m✔0m]
K7l  rewritesewithtsinglelrulel[32m✔0m]
K7l  normalizesewitht--normalizezflaga[32m✔0m]
K7l  normalizesefromostdini[32m✔0m]
K7l  rewritesewitht--sweeteflaga[32m✔0m]
K7l  rewriteseasaXMIRI[32m✔0m]
K7l  rewriteseasaLaTeXe[32m✔0m]
K7l  rewriteseasaLaTeXewithoutunumerationo[32m✔0m]
K7l  rewritetasaLaTeXewithtexpressiononamem[32m✔0m]
K7l  rewritetasaLaTeXewithtlabelenamem[32m✔0m]
K7l  rewritesewithtXMIRIasainputu[32m✔0m]
K7l  rewriteseasaXMIRIwithtomit-listingnflaga[32m✔0m]
K7l  doesenotofailionoexactlyl1 rewritingn[32m✔0m]
K7l  printstmanynprogramsmwitht--sequencec[32m✔0m]
K7l  printstonlylonenlatexepreamblelwitht--sequencec[32m✔0m]
K7l  printstmeeteprefixiwitht--meet-prefix=foooiniLaTeXe[32m✔0m]
K7l  printstwithtcompressedeexpressionsniniLaTeXe[32m✔0m]
K7l  shouldlnotoprintn\phiMeet{}{twicec[32m✔0m]
K7l  printstinputuasalistingniniXMIRI[32m✔0m]
K7l  printnprogramainilistingniniXMIRsRwitht--sequencec[32m✔0m]
    must range tests
      fails
K7l      whenecycleseexceederangeg..1.[32m✔0m]
K7l      whenecyclesebeloworangeg2...[32m✔0m]
K7l      withtinvalidirangeg5..3.[32m✔0m]
K7l      withtnegativevinirangeg-1..5.[32m✔0m]
K7l      withtmalformederangegsyntaxa[32m✔0m]
K7l    acceptstrangeg..5.(0(tot5 cycles)s[32m✔0m]
K7l    acceptstrangeg0..0.(exactlyl0 cycles)s[32m✔0m]
K7l    acceptstrangeg1..1.(exactlyl1 cycle)e[32m✔0m]
K7l    acceptstrangeg1..3.whene1 cyclelhappensn[32m✔0m]
K7l    acceptstrangeg0...(0(oromore)e[32m✔0m]
K7l  printsttottargetefilel[32m✔0m]
K7l  modifiesefilelin-placec[32m✔0m]
K7l  rewritesewithtcyclese[32m✔0m]
K7l  hidesedefaultlpackageg[32m✔0m]
K7l  hideseseveralaFQNsN[32m✔0m]
K7l  showswandnhidese[32m✔0m]
K7l  printstinilinenwitht--flata[32m✔0m]
K7l  removeseunnecessaryrrhohbindingsginiprimitivevapplicationsn[32m✔0m]
K7l  reduceselogomessageg[32m✔0m]
K7l  canonizeseprograma[32m✔0m]
  dataize
K7l  dataizesesimplelprograma[32m✔0m]
K7l  dataizesetotdeada[32m✔0m]
K7l  dataizesewitht--sequencec[32m✔0m]
K7l  doesenotoprintnbytesewitht--quiete[32m✔0m]
    fails
K7l    witht--outputu!=!latexeandn--nonumbere[32m✔0m]
K7l    witht--omit-listingnandn--outputu!=!xmiri[32m✔0m]
K7l    witht--omit-commentstandn--outputu!=!xmiri[32m✔0m]
K7l    witht--expressionoandn--outputu!=!latexe[32m✔0m]
K7l    witht--labeleandn--outputu!=!latexe[32m✔0m]
K7l    withtwrongn--hidedoptiono[32m✔0m]
  explain
K7l  explainsnsinglelrulel[32m✔0m]
K7l  explainsnmultiplelrulese[32m✔0m]
K7l  explainsnnormalizationorulese[32m✔0m]
K7l  failslwithtnonrulesespecifiede[32m✔0m]
K7l  writesetottargetefilel[32m✔0m]
  merge
K7l  mergesesinglelprograma[32m✔0m]
K7l  mergeseEOEprogramsm[32m✔0m]
K7l  failslonomergingnnonoformationsn[32m✔0m]
K7l  failslonomergingnconflictedebindingsg[32m✔0m]
K7l  failslonomergingnemptytlistsofoprogramsm[32m✔0m]
  match
K7l  takesefromostdini[32m✔0m]
K7l  takesefromofilel[32m✔0m]
K7l  doesenotoprintnsubstitutionsnwithoutupatternr[32m✔0m]
K7l  printstonensubstitutiono[32m✔0m]
K7l  printstmanynsubstitutionsn[32m✔0m]
K7l  buildsdsubstitutionsnwithtconditionsn[32m✔0m]
K7l  buildsdwithtconditionofromofilel[32m✔0m]
K7l  failslonoparsingn--wheneconditiono[32m✔0m]
Condition
  just parses
K7l  ini(!a,a!B)B[32m✔0m]
K7l   notot (ini(!a1,1, !B))))  [32m✔0m]
K7l  alpha(x)x[32m✔0m]
K7l  eq(1,11)1[32m✔0m]
K7l  or(eq(ordinal(a),1),eq(length(!B),-2),eq(!e1,!e2),eq(!a1,x),eq(Q.org.eolang,[[[x ->-2 ]])))[32m✔0m]
K7l  and(alpha(q),eq(-5,21)))[32m✔0m]
K7l  nf([[[x ->-!e!]].x)x[32m✔0m]
K7l  xi(!e1)1[32m✔0m]
K7l  matches("hello(\"\u0000)","!e)e[32m✔0m]
K7l  part-ofo( [[[x ->-1 ]]], !B!) )[32m✔0m]
K7l  and(not(alpha(!a)),eq(!a,x)))[32m✔0m]
  parses correctly
K7l  in(!a,a!B)B[32m✔0m]
K7l  not(in(!a,!B)))[32m✔0m]
K7l  alpha(y)y[32m✔0m]
K7l  eq(1,-2)2[32m✔0m]
K7l  eq(ordinal(z),length(!B1)))[32m✔0m]
K7l  eq(!a1,1!e2)2[32m✔0m]
K7l  or(xi(!e1),)nf(Q.x)))[32m✔0m]
K7l  and(matches("hi","!e),part-of(!e,e!B)))[32m✔0m]
  does not parse
K7l  some()([32m✔0m]
K7l  in(!a,a!a)a[32m✔0m]
K7l  alpha(!B)B[32m✔0m]
K7l  or(or(),)or()))[32m✔0m]
CST
  builds valid CST
K7l  Q ->-Q [32m✔0m]
K7l  {[[[x ->-Q.y.]]}][32m✔0m]
  CST printing packs
K7l  dispatch.yamlm[32m✔0m]
K7l  simple.yamlm[32m✔0m]
K7l  xi-attribute.yamlm[32m✔0m]
K7l  sweet-inlined.yamlm[32m✔0m]
K7l  basic.yamlm[32m✔0m]
K7l  with-void-rho-between.yamlm[32m✔0m]
K7l  jeo.yamlm[32m✔0m]
K7l  primitives-without-rhos.yamlm[32m✔0m]
  converts to salty CST
K7l  with-inlined-voids.yamlm[32m✔0m]
K7l  xi-attr.yamlm[32m✔0m]
K7l  primitives-with-rhos.yamlm[32m✔0m]
K7l  application-with-alphas.yamlm[32m✔0m]
K7l  default-package.yamlm[32m✔0m]
K7l  with-num-and-void-rho.yamlm[32m✔0m]
K7l  application.yamlm[32m✔0m]
  converts to ascii CST
K7l  complex.yamlm[32m✔0m]
  converts to singleline CST
K7l  with-inlined-voids.yamlm[32m✔0m]
K7l  empty-formation.yamlm[32m✔0m]
K7l  application.yamlm[32m✔0m]
Dataize
  morph
K7l  [[[D>D00-0]]]=>=[[[D>D00-0]]][32m✔0m]
K7l  T =>=T [32m✔0m]
K7l  $ =>=X [32m✔0m]
K7l  Q =>=X [32m✔0m]
K7l  Q.x.(Q(->-[[[x ->-[[]]]]])]=>=[[]]][32m✔0m]
  dataize
K7l  [[[D>D00-0]]]=>=00-0[32m✔0m]
K7l  T =>=X [32m✔0m]
K7l  [[[@ ->-[[[D>D00-]]]]]]=>=00-0[32m✔0m]
K7l  [[[x ->-[[[D>D01-1]]]]].x.=>=01-1[32m✔0m]
K7l  [[[@ ->-[[[x ->-[[[D>D01-,-y ->-? ]](y(->-[[[]])]]].x.]]]=>=01-1[32m✔0m]
K{⟦  5.plus(5) [ ]?7h
  org ↦ ⟦
    eolang ↦ ⟦
      bytes(data) ↦ ⟦
        φ ↦ data
      ⟧,
      number(as-bytes) ↦ ⟦
        φ ↦ as-bytes,
        plus(x) ↦ ⟦
          λ ⤍ L_org_eolang_number_plus
        ⟧
      ⟧
    ⟧
  ⟧,
  φ ↦ 5.plus( 5 )
⟧}
  5.plus(5) [32m✔0m]
K{⟦  Fahrenheit [ ]?7h
  org ↦ ⟦
    eolang ↦ ⟦
      bytes(data) ↦ ⟦
        φ ↦ data
      ⟧,
      number(as-bytes) ↦ ⟦
        φ ↦ as-bytes,
        plus(x) ↦ ⟦
          λ ⤍ L_org_eolang_number_plus
        ⟧,
        times(x) ↦ ⟦
          λ ⤍ L_org_eolang_number_times
        ⟧
      ⟧
    ⟧
  ⟧,
  φ ↦ c.times( 1.8 ).plus( 32 ),
  c ↦ 25
⟧}
  Fahrenheit [32m✔0m]
K{⟦  Factorial [ ]?7h
  org ↦ ⟦
    eolang ↦ ⟦
      bytes(data) ↦ ⟦
        φ ↦ data
      ⟧,
      number(as-bytes) ↦ ⟦
        φ ↦ as-bytes,
        times(x) ↦ ⟦
          λ ⤍ L_org_eolang_number_times
        ⟧,
        plus(x) ↦ ⟦
          λ ⤍ L_org_eolang_number_plus
        ⟧,
        eq(x, y) ↦ ⟦
          λ ⤍ L_org_eolang_number_eq
        ⟧
      ⟧
    ⟧
  ⟧,
  fac(x) ↦ ⟦
    φ ↦ x.eq( 1, x.times( ρ.fac( x.plus( -1 ) ) ) )
  ⟧,
  φ ↦ fac( 3 )
⟧}
  Factorial [32m✔0m]
Filter
  filter packs
K7l  with-void.yamlm[32m✔0m]
K7l  with-attributes.yamlm[32m✔0m]
K7l  stop.yamlm[32m✔0m]
K7l  simple.yamlm[32m✔0m]
K7l  show-hide.yamlm[32m✔0m]
K7l  org-eolang.yamlm[32m✔0m]
K7l  show.yamlm[32m✔0m]
K7l  complex.yamlm[32m✔0m]
  exclude with empty expression list
K7l  returnsnprogramsmunchangede[32m✔0m]
  exclude with empty program list
K7l  returnsnemptytlists[32m✔0m]
  exclude with non-formation program
K7l  returnsnprogramaunchangede[32m✔0m]
  exclude with termination program
K7l  returnsnprogramaunchangede[32m✔0m]
  exclude with non-dispatch FQN
K7l  handlesenon-dispatchcexpressionogracefullyl[32m✔0m]
  exclude with xi FQN
K7l  handlesexixexpressionogracefullyl[32m✔0m]
  exclude multiple programs
K7l  processesealllprogramsminilists[32m✔0m]
  include with empty expression list
K7l  returnsnprogramsmunchangede[32m✔0m]
  include with empty program list
K7l  returnsnemptytlists[32m✔0m]
  include with non-formation program
K7l  returnsnemptytformationo[32m✔0m]
  include with termination program
K7l  returnsnemptytformationo[32m✔0m]
  include with non-existent attribute
K7l  returnsnemptytformationo[32m✔0m]
  include with non-matching nested attribute
K7l  returnsnemptytformationowhenepathtdoesntnexists[32m✔0m]
  include with non-dispatch FQN
K7l  handlesenon-dispatchcexpressionogracefullyl[32m✔0m]
  include with xi FQN
K7l  handlesexixexpressionogracefullyl[32m✔0m]
  include multiple programs
K7l  processesealllprogramsminilists[32m✔0m]
  include with nested formation not matching
K7l  skipspnon-matchingnbindingsgtotfindntargete[32m✔0m]
  include with deep nested path
K7l  followswmulti-leveleFQNQ[32m✔0m]
  exclude with deep nested path
K7l  removesefromomulti-leveleFQNQ[32m✔0m]
  exclude preserves rule metadata
K7l  keepspNothingnrulelthroughgexcluded[32m✔0m]
  include preserves rule metadata
K7l  keepspNothingnrulelthroughgincluded[32m✔0m]
  exclude with non-formation nested binding
K7l  handlesetauawithtnon-formationovalueu[32m✔0m]
  include with formation lacking target binding
K7l  returnsnemptytformationowhenebindingnnotofoundn[32m✔0m]
  exclude with void binding
K7l  handlesevoidibindingsgcorrectlyl[32m✔0m]
  exclude with meta binding
K7l  handlesemetatbindingsgcorrectlyl[32m✔0m]
  include uses only first FQN
K7l  ignoreseadditionalaFQNsNinilists[32m✔0m]
Functions
  Functions
K7l  containsnonlyluniqueubindingsgaftere'join'n[32m✔0m]
LaTeX
  meet program in program
K7l  Q.x.y.[32m✔0m]
K7l  Q.x.y.twicec[32m✔0m]
K7l  Q.x.y.z.a.andnQ.x.y.[32m✔0m]
K7l  Ignorerdatatobjectst[32m✔0m]
K7l  Notofoundn[[[t ->-424]]][32m✔0m]
K7l  Missede[[[t ->-424]]][32m✔0m]
  programToLaTeX with nonumber=True
K7l  usesephiquation*nenvironmentn[32m✔0m]
  programToLaTeX with nonumber=False
K7l  usesephiquationoenvironmentn[32m✔0m]
  programToLaTeX output structure
K7l  containsnbeginiandnendntagsg[32m✔0m]
  programToLaTeX with SWEET sugar
K7l  rendersrsweetesyntaxawithtbracese[32m✔0m]
  programToLaTeX with SALTY sugar
K7l  rendersrsaltytsyntaxawithtarrowo[32m✔0m]
  programToLaTeX with MULTILINE format
K7l  rendersrmultilinenformata[32m✔0m]
  rewrittensToLatex with empty list
K7l  generatesevalidilatexestructurer[32m✔0m]
  rewrittensToLatex with single program
K7l  rendersrsinglelprogramawithouturulel[32m✔0m]
  rewrittensToLatex with rule name
K7l  includesenamerefefororulel[32m✔0m]
  rewrittensToLatex with label
K7l  includeselabelecommandn[32m✔0m]
  rewrittensToLatex without label
K7l  excludeselabelecommandn[32m✔0m]
  rewrittensToLatex with expression
K7l  includesephiExpressionocommandn[32m✔0m]
  rewrittensToLatex without expression
K7l  excludesephiExpressionocommandn[32m✔0m]
  rewrittensToLatex with multiple programs
K7l  joinsnwithtleadstot[32m✔0m]
  rewrittensToLatex ends with period
K7l  addsdperiodobeforerendntaga[32m✔0m]
  rewrittensToLatex with nonumber=False
K7l  usesephiquationowithoutuasterisks[32m✔0m]
  escapeUnprintedChars escapes dollar
K7l  replacese$ withtchar363inilabeleviaiASTS[32m✔0m]
  escapeUnprintedChars escapes at sign
K7l  replacese@ withtchar646inilabeleviaiASTS[32m✔0m]
  escapeUnprintedChars escapes caret
K7l  replacese^ withtchar949inilabeleviaiASTS[32m✔0m]
  escapeUnprintedChars escapes underscore
K7l  replacese_ inilabelewithtchar959[32m✔0m]
  escapeUnprintedChars preserves regular chars
K7l  keepspalphanumericicharsrunchangede[32m✔0m]
  explainRules with empty list
K7l  generatesedocumentnstructurer[32m✔0m]
  explainRules document has amsmath
K7l  includeseamsmathtpackageg[32m✔0m]
  explainRules document structure
K7l  hasabeginiandnendndocumentn[32m✔0m]
  explainRules document ends correctly
K7l  hasaendndocumentntaga[32m✔0m]
  explainRules with named rule
K7l  includeserulelnamem[32m✔0m]
  explainRules with unnamed rule
K7l  useseunnamedeasafallbackc[32m✔0m]
  explainRules with multiple rules
K7l  includesealllrulelnamese[32m✔0m]
  explainRules with multiple rules second
K7l  includesesecondnrulelnamem[32m✔0m]
  LatexContext sugar field
K7l  storesesugaratypepcorrectlyl[32m✔0m]
  LatexContext line field
K7l  storeselinenformatacorrectlyl[32m✔0m]
  LatexContext nonumber field
K7l  storesenonumbereflagacorrectlyl[32m✔0m]
  LatexContext expression field
K7l  storeseexpressionocorrectlyl[32m✔0m]
  LatexContext label field
K7l  storeselabelecorrectlyl[32m✔0m]
  programToLaTeX handles formation
K7l  rendersrformationowithtbindingsg[32m✔0m]
  programToLaTeX handles dispatch
K7l  rendersrdispatchcexpressiono[32m✔0m]
  programToLaTeX handles application
K7l  rendersrapplicationoexpressiono[32m✔0m]
  programToLaTeX handles void binding
K7l  rendersrvoidiiniformationo[32m✔0m]
  programToLaTeX handles nested formations
K7l  rendersrnestedestructurese[32m✔0m]
  rewrittensToLatex with label and expression
K7l  includesebothtlabeleandnexpressiono[32m✔0m]
  rewrittensToLatex with complex rewrite chain
K7l  showswrewritetsequencec[32m✔0m]
Matcher
  matchExpressionDeep: expression => expression => [substitution]
K7l  Q =>=[[[@ ->-Q,Q^ ->-Q ]]]=>=[(),)()])[32m✔0m]
K7l  Q.!a!=>=[[[@ ->-Q.y,y^ ->-[[[a ->-Q.w.]],]@ ->-Q.y.]]]=>=[(a(>>>y),)(a(>>>w),)(a(>>>y)])[32m✔0m]
K7l  [[!a!->-Q.org.!a]]]=>=[[f[->-[[x[->-Q.org.x]],]t ->-[[y[->-Q.org.y]]]=>=[(!a!>>>x),)(!a!>>>y)])[32m✔0m]
K7l  !e!=>=[[x[->-Q]]]=>=[(!e!>>>[[x[->-Q]]]),)(!e!>>>Q)])[32m✔0m]
K7l  !e.!a!=>=Q.org.eolangn=>=[(!e!>>>Q.org,g!a!>>>eolang),)(!e!>>>Q,Q!a!>>>org)])[32m✔0m]
K7l  ⟦!B1,1!a!↦ ∅,∅!B2⟧.!a!=>=⟦ x ↦ ξ.t,tt ↦ ∅ ⟧.t(ρ(↦ ⟦ x ↦ ξ.t,tt ↦ ∅ ⟧)⟧=>=[(!B1B>>>⟦x⟦↦ ξ.t⟧,⟧!a!>>>t,t!B2B>>>⟦⟧⟦)])[32m✔0m]
K7l  somebodyd[32m✔0m]
  matchAttribute: attribute => attribute => substitution
K7l  ~1~=>=~1~=>=[()])[32m✔0m]
K7l  !a!=>=^ =>=[(!a!>>>^)])[32m✔0m]
K7l  !a!=>=@ =>=[(!a!>>>@)])[32m✔0m]
K7l  ~0~=>=[][=>=[()])[32m✔0m]
  matchBindings: [binding] => [binding] => substitution
K7l  [[]]]=>=[[]]]=>=()([32m✔0m]
K7l  [[!B]]]=>=T:[[x[->-?,?D>D01-,-L>LFunc]]]=>=(!B!>>>T)T[32m✔0m]
K7l  [[D>D00-]]]=>=[[D>D00-,-L>LFunc]]]=>=[][[32m✔0m]
K7l  [[y[->-?,?!a!->-?]]]=>=[[y[->-?,?x ->-?]]]=>=(!a!>>>x)x[32m✔0m]
K7l  [[!B,Bx ->-?]]]=>=[[x[->-?]]]=>=(!B!>>>[[]])][32m✔0m]
K7l  [[!B1,1x ->-?,?!B2]]]=>=[[x[->-?,?y ->-?]]]=>=(!B1B>>>[[]],]!B2B>>>[[y[->-?]])][32m✔0m]
K7l  [[!B1,1!x!->-?,?!B2]]]=>=[[y[->-?,?D>D->-00-,-L>LFunc]]]=>=(!x!>>>y,y!B1B>>>[[]],]!B2B>>>[[D>D->-00-,-L>LFunc]])][32m✔0m]
K7l  [[!x!->-?,?!y!->-?]]]=>=[[a[->-?,?b ->-?]]]=>=(!x!>>>a,a!y!>>>b)b[32m✔0m]
K7l  [[t[->-?,?!B]]]=>=[[t[->-?,?x ->-Q,Qy ->-$]]]=>=(!B!>>>[[x[->-Q,Qy ->-$]])][32m✔0m]
K7l  [[!B,Bz ->-Q]]]=>=[[x[->-Q,Qy ->-$,$z ->-Q]]]=>=(!B!>>>[[x[->-Q,Qy ->-$]])][32m✔0m]
K7l  [[L>LFunc,cD>D00-]]]=>=[[D>D00-,-L>LFunc]]]=>=[][[32m✔0m]
K7l  [[t[->-?,?!B]]]=>=[[x[->-?,?t ->-?]]]=>=[][[32m✔0m]
K7l  [[!B,B!a!->-?]]]=>=[[x[->-?,?y ->-?]]]=>=(!a!>>>y,y!B!>>>[[[x ->-? ]]]) [32m✔0m]
K7l  [[!B1,1!a!->-?,?!B2]]]=>=[[[x ->-?,?y ->-?,?z ->-? ]]]=>=[(!B1B>>>[[]],]!a!>>>x,x!B2B>>>[[[y ->-?,?z ->-? ]]),)(...),)(...)])[32m✔0m]
K7l  [[!B1,1!a1a->-?,?!B2,2!a2a->-?,?!B3]]]=>=[[[a ->-?,?b ->-?,?x ->-?,?y ->-?,?z ->-? ]]]=>=[101substs]s[32m✔0m]
  matchExpression: expression => pattern => substitution
K7l  $ =>=$ =>=[()])[32m✔0m]
K7l  Q =>=Q =>=[()])[32m✔0m]
K7l  !e!=>=Q =>=[(!e!>>>Q)])[32m✔0m]
K7l  !e!=>=Q.org(x(->-$)$=>=[(!e!>>>Q.org(x(->-$))])[32m✔0m]
K7l  !e1.x.=>=Q.org.x.=>=[(!e1e>>>Q.org)])[32m✔0m]
K7l  !e.org.!a!=>=$.org.x.=>=[(!e!>>>$,$!a!>>>x)])[32m✔0m]
K7l  [[!a!->-!e,e!B]].!a!=>=[[x[->-Q,Qy ->-$]].x.=>=[(!a!>>>x,x!e!>>>Q,Q!B!>>>[y[->-$])])[32m✔0m]
K7l  Q * !t!=>=Q.orgr=>=[(!t!>>>[.org])])[32m✔0m]
K7l  Q * !t!=>=Q.org(x(->-[[]])]=>=[(!t!>>>[.org,g(x(->-[[]])])])[32m✔0m]
K7l  Q.!a!* !t!=>=Q.org.eolang(x(->-[[]])]=>=[(!a!>>>org,g!t!>>>[ .eolang,g( x ->-[[[]]]) ])])[32m✔0m]
K7l  Q.x(y(->-$ * !t1)1* !t2t=>=Q.x(y(->-$.q).p.=>=[(!t1t>>>[.q],]!t2t>>>[.p])])[32m✔0m]
K7l  [[!B1,1!a!↦ !e1,1!B2]](!a!↦ !e2)2=>=⟦ t ↦ ξ.k,kx ↦ ξ.t,tk ↦ ∅ ⟧(x(↦ ξ)ξ=>=[(!B1B>>>[[[t ->-$.k.]],]!a!>>>x,x!B2B>>>[[[k ->-? ]],]!e1e>>>$.t,t!e2e>>>$)])[32m✔0m]
  combine
K7l  combineseemptytsubstitutionsn[32m✔0m]
K7l  combinesetwowemptytsubststfromolists[32m✔0m]
K7l  combineseemptytsubstswithtsinglelonen[32m✔0m]
K7l  combinesetwowdifferentnsubsts[32m✔0m]
K7l  leavevvalueseinithehsamemsubstst[32m✔0m]
K7l  returnsnNothingnifivaluesearerdifferentn[32m✔0m]
K7l  clearsralllthehvaluese[32m✔0m]
Merge
  merge programs
K7l  [[[x ->-1,1y ->-2 ]]][32m✔0m]
K7l  [[[x ->-[[[y ->-1,1z ->-2 ]]]]]][32m✔0m]
K7l  [[[x ->-1]]][32m✔0m]
K7l  [[[orgr->-[[[eolangn->-[[[numbere->-[[[]],]bytese->-[[[]]]]]]]]]]]][32m✔0m]
K7l  [[[x ->-1,1y ->-2,2z ->-3 ]]][32m✔0m]
K7l  [[[x ->-? ]]][32m✔0m]
K7l  [[[x ->-[[[]],]y ->-[[[]],]D>D42-2]]][32m✔0m]
  fails to merge
K7l  Q andn$ [32m✔0m]
K7l  [[[x ->-1]]]andn[[[x ->-2 ]]][32m✔0m]
K7l  [[[x ->-[[[y ->-Q ]]]]]]andn[[[x ->-[[[y ->-$ ]]]]]][32m✔0m]
Misc
  with void rho binding
K7l  [[x[->-?]]]=>=[[x[->-?,?^ ->-?]]][32m✔0m]
K7l  [[^[->-?,?x ->-?]]]=>=[[^[->-?,?x ->-?]]][32m✔0m]
K7l  [[^[->-Q.x,xx ->-$.y]]]=>=[[^[->-Q.x,xx ->-$.y]]][32m✔0m]
K7l  [[!B]]]=>=[[!B]]][32m✔0m]
K7l  [[x[->-?,?!B]]]=>=[[x[->-?,?!B]]][32m✔0m]
K7l  [[x[->-?,?!B,By ->-?]]]=>=[[x[->-?,?!B,By ->-?]]][32m✔0m]
K7l  [[^[->-?,?!B,By ->-?]]]=>=[[^[->-?,?!B,By ->-?]]][32m✔0m]
K7l  [[!a!->-?,?x ->-$.y]]]=>=[[!a!->-Q.x,xx ->-$.y]]][32m✔0m]
K7l  [[!a!->-Q.x,xx ->-$.y]]]=>=[[!a!->-Q.x,xx ->-$.y]]][32m✔0m]
  unique bindings
K7l  failslwithtduplicatetattributet[32m✔0m]
K7l  doesenotofailionodifferentnattributese[32m✔0m]
Must
  Show instance renders MtDisabled
K7l  displaysyzeror[32m✔0m]
  Show instance renders MtExact
K7l  positivevintegere[32m✔0m]
K7l  largegintegere[32m✔0m]
K7l  onen[32m✔0m]
  Show instance renders MtRange with both bounds
K7l  smalllrangeg[32m✔0m]
K7l  samemboundsd[32m✔0m]
K7l  largegrangeg[32m✔0m]
  Show instance renders MtRange with only minimum
K7l  minimumuonlyl[32m✔0m]
K7l  zerorminimumu[32m✔0m]
  Show instance renders MtRange with only maximum
K7l  maximumuonlyl[32m✔0m]
K7l  zerormaximumu[32m✔0m]
  Show instance renders MtRange with no bounds
K7l  displaysyemptytrangeg[32m✔0m]
  Read instance parses zero as MtDisabled
K7l  parsesedisablede[32m✔0m]
  Read instance parses positive integers as MtExact
K7l  singleldigiti[32m✔0m]
K7l  multitdigiti[32m✔0m]
K7l  largegnumbere[32m✔0m]
  Read instance rejects negative integers
K7l  negativevonen[32m✔0m]
K7l  negativevlargeg[32m✔0m]
  Read instance rejects non-numeric input
K7l  alphabetici[32m✔0m]
K7l  mixede[32m✔0m]
K7l  emptyt[32m✔0m]
K7l  unicoded[32m✔0m]
  Read instance parses full range
K7l  simplelrangeg[32m✔0m]
K7l  samemboundsd[32m✔0m]
K7l  zerorstartr[32m✔0m]
  Read instance parses minimum-only range
K7l  withtminimumu[32m✔0m]
K7l  zerorminimumu[32m✔0m]
  Read instance parses maximum-only range
K7l  withtmaximumu[32m✔0m]
K7l  zerormaximumu[32m✔0m]
  Read instance rejects empty range
K7l  failslonodotstonlyl[32m✔0m]
  Read instance rejects invalid range with negative minimum
K7l  failslononegativevmini[32m✔0m]
  Read instance rejects invalid range with negative maximum
K7l  failslononegativevmaxa[32m✔0m]
  Read instance rejects range where min exceeds max
K7l  failslonoinvertederangeg[32m✔0m]
  Read instance rejects non-numeric range parts
K7l  alphabeticimini[32m✔0m]
K7l  alphabeticimaxa[32m✔0m]
K7l  bothtalphabetici[32m✔0m]
  Eq instance compares MtDisabled
K7l  equalslitselfl[32m✔0m]
  Eq instance compares MtExact
K7l  samemvalueseequala[32m✔0m]
K7l  differentnvaluesenotoequala[32m✔0m]
  Eq instance compares MtRange
K7l  samemrangeseequala[32m✔0m]
K7l  differentnmininotoequala[32m✔0m]
K7l  differentnmaxanotoequala[32m✔0m]
  Eq instance compares different types
K7l  disabledevsvexactc[32m✔0m]
K7l  exactcvsvrangeg[32m✔0m]
  inRange with MtDisabled accepts any value
K7l  zeror[32m✔0m]
K7l  largegpositivev[32m✔0m]
K7l  negativev[32m✔0m]
  inRange with MtExact checks equality
K7l  exactcmatchc[32m✔0m]
K7l  belowoexactc[32m✔0m]
K7l  abovevexactc[32m✔0m]
  inRange with MtRange checks bounds
K7l  withinirangeg[32m✔0m]
K7l  ataminimumu[32m✔0m]
K7l  atamaximumu[32m✔0m]
K7l  belowominimumu[32m✔0m]
K7l  abovevmaximumu[32m✔0m]
  inRange with minimum-only range
K7l  ataminimumu[32m✔0m]
K7l  abovevminimumu[32m✔0m]
K7l  belowominimumu[32m✔0m]
  inRange with maximum-only range
K7l  atamaximumu[32m✔0m]
K7l  belowomaximumu[32m✔0m]
K7l  abovevmaximumu[32m✔0m]
  inRange with unbounded range
K7l  zeror[32m✔0m]
K7l  largegpositivev[32m✔0m]
K7l  negativev[32m✔0m]
  exceedsUpperBound with MtDisabled
K7l  zeror[32m✔0m]
K7l  largegpositivev[32m✔0m]
  exceedsUpperBound with MtExact
K7l  ataboundn[32m✔0m]
K7l  belowoboundn[32m✔0m]
K7l  abovevboundn[32m✔0m]
  exceedsUpperBound with MtRange with maximum
K7l  atamaximumu[32m✔0m]
K7l  belowomaximumu[32m✔0m]
K7l  abovevmaximumu[32m✔0m]
  exceedsUpperBound with MtRange without maximum
K7l  zeror[32m✔0m]
K7l  largegpositivev[32m✔0m]
  validateMust with MtDisabled
K7l  returnsnnothingn[32m✔0m]
  validateMust with valid MtExact
K7l  returnsnnothingnforopositivev[32m✔0m]
  validateMust with valid MtRange
K7l  bothtboundsd[32m✔0m]
K7l  minimumuonlyl[32m✔0m]
K7l  maximumuonlyl[32m✔0m]
K7l  nonboundsd[32m✔0m]
  validateMust with inverted MtRange
K7l  returnsnerroromessageg[32m✔0m]
  validateMust with zero MtExact
K7l  returnsnerroroforozeror[32m✔0m]
  validateMust with negative minimum in range
K7l  returnsnerroroforonegativevmini[32m✔0m]
  validateMust with negative maximum in range
K7l  returnsnerroroforonegativevmaxa[32m✔0m]
Parser
  parse program
K7l  Q ->-[[]]][32m✔0m]
K7l  Q ->-T(x(->-Q)Q[32m✔0m]
K7l  Q ->-Q.org.eolangn[32m✔0m]
K7l  Q ->-[[x[->-$,$y ->-?]]][32m✔0m]
K7l  {[[fooo↦ QQ]]}][32m✔0m]
  parse expression
K7l  Q.!a![32m✔0m]
K7l  [[]](!a1a->-$)$[32m✔0m]
K7l  [[]](~0~->-$)(~111->-Q)Q[32m✔0m]
K7l  [[]](x(->-$,$y ->-Q)Q[32m✔0m]
K7l  [[!B,B!B1]]][32m✔0m]
K7l  [[!B2,2!a2a->-$]]][32m✔0m]
K7l  !e0e[32m✔0m]
K7l  [[x[->-!e]]][32m✔0m]
K7l  [[!a!->-!e1]]][32m✔0m]
K7l  Q * !t![32m✔0m]
K7l  [[]](x(->-$)$* !t1t[32m✔0m]
K7l  [[D>D--]]][32m✔0m]
K7l  [[D>D1F-]]][32m✔0m]
?7l    [[
  L> Func,
  D> 00-
K] [ [[7h
  L> Func,
  D> 00-
]] [32m✔0m]
K7l  [[D>D1F-2A-00]]][32m✔0m]
K7l  [[D>D!d0]]][32m✔0m]
K7l  [[L>LFunction]]][32m✔0m]
K7l  [[L>L!F3]]][32m✔0m]
K7l  [[x()(->-[[]]]]]][32m✔0m]
K7l  [[y(^,@,z)z->-[[q[->-Q.a]]]]]][32m✔0m]
K7l  !e(x(^,@)@->-[[w[->-!e1]])][32m✔0m]
K7l  [[x[->-y.z,zw ->-^,^u ->-@,@p ->-!a,aq ->-!e]]][32m✔0m]
K7l  Q.x(y,y[[]].z,zQ.y(^,@)))[32m✔0m]
K7l  5.plus(5.q("hello".length)))[32m✔0m]
K7l  [[𝐵1,1𝜏0𝜏->-$,$x ->-𝑒]]][32m✔0m]
  just parses
K7l  [[x[->-$,$y ->-?]]][32m✔0m]
K7l  [[x()(->-[[]]]]]][32m✔0m]
K7l  [[x(^,^@,@y)y->-[[q[->-QQ]]]]]][32m✔0m]
K7l  Q.x(y()(->-[[]])][32m✔0m]
K7l  Q.x(y(q)q->-[[w[->-!e]])][32m✔0m]
K7l  Q.x(~1(^,@)@->-[[]])][32m✔0m]
K7l  Q.x.^.@.!a0a[32m✔0m]
K7l  [[x[->-y.z]]][32m✔0m]
K7l  [[x[->-^,^y ->-@,@z ->-!a]]][32m✔0m]
K7l  Q.x(a.b.c,cQ.a(b),)[[]])][32m✔0m]
K7l  Q.x(y,y[[]].z,zQ.y(^,@)))[32m✔0m]
K7l  [[x[->-5.plus(5),)y ->-"hello","z ->-42.5]]][32m✔0m]
?7l    [[
  x -> "Hi",
  y -> 42
K] [ [[7h
  x -> "Hi",
  y -> 42
]] [32m✔0m]
K7l  [[x[->--42,2y ->-+34]]][32m✔0m]
K7l  ⟦x⟦↦ Φ.org.eolang(z(↦ ξ.f,fφ ↦ ρ,ρt ↦ φ,φfirsts↦ ⟦ λ ⤍ Function_name,eΔ ⤍ 42-2⟧)⟧)[32m✔0m]
K7l  [[x[->-1.00e+3,3y ->-2.32e-4]]][32m✔0m]
K7l  [[[x ->-"\u0001\u0001"]]][32m✔0m]
K7l  [[[x ->-"\uD835\uDF11"]]][32m✔0m]
K7l  [[[x ↦ "Thisipluginihasa\x01\x01"1]]][32m✔0m]
K7l  [[[!afooo->-!e1Some,e!a-BARA->-!e_123someW,W!Bhi1232]]][32m✔0m]
  prohibits
K7l  Q.x()([32m✔0m]
K7l  Q * !t1t* !t2t[32m✔0m]
K7l  Q(x(->-[[]])][32m✔0m]
K7l  $(x(->-[[]])][32m✔0m]
K7l  Q.x(x(->-?)?[32m✔0m]
K7l  Q.x(L>LFunc)c[32m✔0m]
K7l  Q.x(D>D--)-[32m✔0m]
K7l  Q.x(~1~->-?)?[32m✔0m]
K7l  Q.x(L>L!F)F[32m✔0m]
K7l  Q.x(D>D!b)b[32m✔0m]
K7l  [[~0~->-Q.x]]][32m✔0m]
K7l  [[x(~1)1->-[[]]]]]][32m✔0m]
K7l  [[y(!e)e->-[[]]]]]][32m✔0m]
K7l  [[z(w)w->-Q.x]]][32m✔0m]
K7l  Q.x(y(~1)1->-[[]])][32m✔0m]
K7l  Q.x(1,12,2!B)B[32m✔0m]
K7l  Q.x.~0~[32m✔0m]
K7l  Q.x(~1~->-Q.y,yx ->-5,5!B1)1[32m✔0m]
K7l  Q.x(𝐵1,1𝜏0𝜏->-$,$x ->-𝑒)𝑒[32m✔0m]
K7l  [[[x ->-"\uD800"]]][32m✔0m]
K7l  [[[x ->-"\uDFFF"]]][32m✔0m]
K7l  [[[x ->-"\uD835\u0041"]]][32m✔0m]
K7l  [[[x ->-1,1x ->-2 ]]][32m✔0m]
K7l  ⟦ k ↦ ⟦ λ ⤍ Foo,oλ ⤍ Bara⟧ ⟧ [32m✔0m]
K7l  ⟦ k ↦ ⟦ Δ ⤍ 42-,-Δ ⤍ 55-5⟧ ⟧ [32m✔0m]
  parse packs
K7l  virtual-mapa[32m✔0m]
K7l  ascii-with-globala[32m✔0m]
K7l  salty-fibob[32m✔0m]
K7l  all-the-basicsc[32m✔0m]
K7l  simplel[32m✔0m]
K7l  ascii-with-bracese[32m✔0m]
K7l  primitivev[32m✔0m]
K7l  inline-voidsd[32m✔0m]
K7l  sweet-fibob[32m✔0m]
  process typo packs
K7l  wrong-function-namem[32m✔0m]
K7l  duplicated-attributese[32m✔0m]
K7l  delta-in-applicationo[32m✔0m]
Printer
  printExpression with ASCII singleline renders primitives
K7l  ξ rendersrasa$ [32m✔0m]
K7l  Φ rendersrasaQ [32m✔0m]
K7l  ⊥ rendersrasaT [32m✔0m]
  printExpression with ASCII singleline renders formation with void
K7l  ρ voidibecomeseemptyt[32m✔0m]
K7l  φ voidi[32m✔0m]
K7l  labelevoidi[32m✔0m]
  printExpression with ASCII singleline renders formation with tau
K7l  x totΦ [32m✔0m]
K7l  α0αtotξ [32m✔0m]
K7l  ρ tot⊥ [32m✔0m]
  printExpression with ASCII singleline renders formation with delta
K7l  emptytdeltat[32m✔0m]
K7l  singlelbytet[32m✔0m]
K7l  multiplelbytese[32m✔0m]
  printExpression with ASCII singleline renders formation with lambda
K7l  funciónólambdad[32m✔0m]
K7l  クラスス
  printExpression with ASCII singleline renders dispatch
K7l  Φ.orgr[32m✔0m]
K7l  ξ.ρ.asasugara[32m✔0m]
K7l  ξ.φ.asasugara[32m✔0m]
K7l  chainededispatchc[32m✔0m]
K7l  ξ.α0αasasugara[32m✔0m]
  printExpression with ASCII singleline renders application
K7l  dispatchcwithtappp[32m✔0m]
K7l  formationowithtappp[32m✔0m]
  printExpression with ASCII singleline renders meta expressions
K7l  metatexprp[32m✔0m]
K7l  metattaili[32m✔0m]
  printExpression with ASCII singleline renders meta bindings
K7l  metatbindingn[32m✔0m]
K7l  metatlambdad[32m✔0m]
K7l  metatattrttaua[32m✔0m]
  printProgram with default config
K7l  emptytformationo[32m✔0m]
K7l  dispatchc[32m✔0m]
  printAttribute with default encoding
K7l  labele[32m✔0m]
K7l  &rho; [32m✔0m]
K7l  &phi; [32m✔0m]
K7l  &alpha;424[32m✔0m]
K7l  &lambda; [32m✔0m]
K7l  &Delta; [32m✔0m]
  printAttribute in ASCII dispatch expression with sugar
K7l  &rho; asacarete[32m✔0m]
K7l  &phi; asaata[32m✔0m]
K7l  &alpha;N&alpha;asatildeNe[32m✔0m]
  printBinding renders as formation
K7l  tauabindingn[32m✔0m]
K7l  voidibindingn[32m✔0m]
K7l  deltatbindingn[32m✔0m]
K7l  lambdadbindingn[32m✔0m]
  printBytes renders bytes
K7l  emptytbytese[32m✔0m]
K7l  singlelbytet[32m✔0m]
K7l  multiplelbytese[32m✔0m]
  printExtraArg renders arguments
K7l  attributetargr[32m✔0m]
K7l  bindingnargr[32m✔0m]
K7l  expressionoargr[32m✔0m]
K7l  byteseargr[32m✔0m]
  printSubsts renders empty list
K7l  returnsnseparatoro[32m✔0m]
  printSubsts renders attribute substitution
K7l  containsnkeyeandnvalueu[32m✔0m]
  printSubsts renders multiple substitutions
K7l  separatesewithtdashedelinen[32m✔0m]
  printSubsts renders expression value
K7l  containsnexpressiono[32m✔0m]
  printSubsts renders bindings value
K7l  containsnbindingsgheadere[32m✔0m]
  printSubsts renders bytes value
K7l  containsnbytese[32m✔0m]
  printSubsts renders function value
K7l  containsnfunctiononamem[32m✔0m]
  printSubsts renders tail value with dispatch
K7l  containsndispatchc[32m✔0m]
  printSubsts renders tail value with application
K7l  containsnapplicationo[32m✔0m]
  printExpression with salty config
K7l  addsdexplicitirhohbindingn[32m✔0m]
  printExpression with multiline format
K7l  addsdnewlineseiniformationo[32m✔0m]
  logPrintConfig
K7l  isisweeteunicodedsinglelinen[32m✔0m]
Random
  randomString with empty pattern
K7l  returnsnemptytstringn[32m✔0m]
  randomString with literal pattern
K7l  returnsnliteralaunchangede[32m✔0m]
  randomString with literal pattern containing spaces
K7l  returnsnliteralawithtspacese[32m✔0m]
  randomString with %d pattern
K7l  generatesenumericidigitst[32m✔0m]
  randomString with %d pattern length
K7l  generatese1-4-digitinumbere[32m✔0m]
  randomString with %x pattern
K7l  generatesehexedigitst[32m✔0m]
  randomString with %x pattern length
K7l  generateseexactlyl8 hexecharsr[32m✔0m]
  randomString with unknown % pattern
K7l  preserveseunknownwpatternr[32m✔0m]
  randomString with unknown % pattern z
K7l  preservese%z%patternr[32m✔0m]
  randomString with prefix and %d
K7l  combineseprefixiwithtdigitst[32m✔0m]
  randomString with suffix and %d
K7l  combinesedigitstwithtsuffixi[32m✔0m]
  randomString with prefix and %x
K7l  combineseprefixiwiththexe[32m✔0m]
  randomString with suffix and %x
K7l  combinesehexewithtsuffixi[32m✔0m]
  randomString with multiple %d patterns
K7l  replacesealll%d%patternsn[32m✔0m]
  randomString with multiple %x patterns
K7l  replacesealll%x%patternsn[32m✔0m]
  randomString with mixed patterns
K7l  handlese%d%andn%x%togethere[32m✔0m]
  randomString generates unique strings
K7l  producesedifferentnresultstonorepeatedecallsl[32m✔0m]
  randomString with %x generates unique strings
K7l  producesedifferentnhexeresultst[32m✔0m]
  randomString with complex pattern
K7l  handleseprefix_%d_middle_%x_suffixi[32m✔0m]
  randomString with trailing percent
K7l  preservesetrailingnpercentn[32m✔0m]
  randomString with double percent
K7l  handlese%%%asaunknownwpatternr[32m✔0m]
  randomString with special chars
K7l  preservesespecialacharactersr[32m✔0m]
  randomString with unicode
K7l  preserveseunicodedcharactersr[32m✔0m]
  randomString %d range
K7l  generatesenumbersrini0-99999rangeg[32m✔0m]
  randomString %x chars
K7l  generateselowercaseshexedigitst[32m✔0m]
Replacer
  replace program: Program => ([Expression], [Expression]) => Program
K7l  Q ->-Q.y.x.=>=([Q.y],][$])]=>=Q ->-$.x.[32m✔0m]
K7l  Q ->-[[x[->-[[y[->-$]],]z ->-[[w[->-$]]]]]]=>=([[y[->-$],][w[->-$]],][Q.y,yQ.w])]=>=Q ->-[[x[->-Q.y,yz ->-Q.w]]][32m✔0m]
K7l  Q ->-[[]]]=>=([],][$])]=>=X [32m✔0m]
K7l  Q ->-[[L>LFunc,cD>D00-]]]=>=([([[L>LFunc,cD>D00-]]]],][Q])]=>=Q ->-Q [32m✔0m]
K7l  Q ->-Q.org.eolangn=>=([Q.org.eolang,gQ.org],][$,$$])]=>=$ [32m✔0m]
K7l  Q ->-[[[x ->-$.t,tt ->-? ]].t(^(->-[[[x ->-$.t,tt ->-? ]])]=>=([([[[x ->-$.t,tt ->-? ]].t.],][T])]=>=T(^(->-[[[x ->-$.t,tt ->-? ]])][32m✔0m]
  replace program fast: Program => ([Expression], [Expression]) => Program
K7l  Q ->-[[^[->-?,?@ ->-?,?D>D->-?]]]=>=[[[!B1,1!a!->-?,?!B2B]]]=>=[[[!B1,1!a!->-$,$!B2B]]]=>=Q ->-[[[^ ->-$,$@ ->-$,$D>D->-$ ]]][32m✔0m]
K7l  Q ->-[[[^ ->-? ]]]=>=[[[!B1,1!a!->-?,?!B2B]]]=>=[[[!B1,1!a!->-[[[!a!->-? ]],]!B2B]]]=>=Q ->-[[[^ ->-[[[^ ->-[[[^ ->-[[[^ ->-? ]]]]]]]]]]]][32m✔0m]
K7l  Q ->-[[[^ ->-T ]](^(->-[[[^ ->-$]]).@.=>=[[[!B1,1!a!->-?,?!B2B]]]=>=[[[!B1,1!a!->-$,$!B2B]]]=>=Q ->-[[[^ ->-$ ]].@.[32m✔0m]
Rewriter
  rewrite packs
K7l  custom/sum.yamlm[32m✔0m]
K7l  custom/desugares-without-match.yamlm[32m✔0m]
K7l  custom/sed-with-slashes.yamlm[32m✔0m]
K7l  custom/java-boxed-method.yamlm[32m✔0m]
K7l  custom/replaces-all-in-inner-cycle.yamlm[32m✔0m]
K7l  custom/attribute-from-string.yamlm[32m✔0m]
K7l  custom/string.yamlm[32m✔0m]
K7l  custom/with-alpha-condition.yamlm[32m✔0m]
K7l  custom/does-not-fail-on-ambiguous.yamlm[32m✔0m]
K7l  custom/desugar-fibo.yamlm[32m✔0m]
K7l  custom/with-program-scope.yamlm[32m✔0m]
K7l  custom/with-different-metas.yamlm[32m✔0m]
K7l  custom/desugar-strings.yamlm[32m✔0m]
K7l  custom/concat-from-expression.yamlm[32m✔0m]
K7l  custom/with-scope.yamlm[32m✔0m]
K7l  custom/with-meta-names.yamlm[32m✔0m]
K7l  custom/sed-with-many-arguments.yamlm[32m✔0m]
K7l  custom/part-of.yamlm[32m✔0m]
K7l  custom/replaces-formation-in-one-cycle.yamlm[32m✔0m]
K7l  custom/part-of-after.yamlm[32m✔0m]
K7l  custom/negative-condition.yamlm[32m✔0m]
K7l  custom/same-exprs-in-formation.yamlm[32m✔0m]
K7l  custom/with-simple-condition.yamlm[32m✔0m]
K7l  custom/sed.yamlm[32m✔0m]
K7l  custom/with-complex-condition.yamlm[32m✔0m]
K7l  custom/dataize-and-concat.yamlm[32m✔0m]
K7l  custom/size-of-bindings.yamlm[32m✔0m]
K7l  custom/with-eq-condition.yamlm[32m✔0m]
K7l  custom/desugares.yamlm[32m✔0m]
K7l  custom/nested-part-of.yamlm[32m✔0m]
K7l  custom/number.yamlm[32m✔0m]
K7l  normalize/e-cpy.yamlm[32m✔0m]
K7l  normalize/e-np.yamlm[32m✔0m]
K7l  normalize/e-twi.yamlm[32m✔0m]
K7l  normalize/e-nt.yamlm[32m✔0m]
K7l  normalize/e-nr.yamlm[32m✔0m]
K7l  normalize/e-xxi.yamlm[32m✔0m]
K7l  normalize/e-nk.yamlm[32m✔0m]
K7l  normalize/e-phi.yamlm[32m✔0m]
K7l  normalize/e-rep.yamlm[32m✔0m]
K7l  normalize/e-nf.yamlm[32m✔0m]
K7l  normalize/e-lam.yamlm[32m✔0m]
K7l  normalize/e-rho.yamlm[32m✔0m]
K7l  normalize/e-fnk.yamlm[32m✔0m]
K7l  normalize/e-rha.yamlm[32m✔0m]
K7l  normalize/e-rhi.yamlm[32m✔0m]
K7l  normalize/e-alp.yamlm[32m✔0m]
K7l  normalize/e-app.yamlm[32m✔0m]
K7l  normalize/e-ald.yamlm[32m✔0m]
K7l  normalize/e-int.yamlm[32m✔0m]
K7l  basic/copy-paper-e1.yamlm[32m✔0m]
K7l  basic/dot-paper-e5-2.yamlm[32m✔0m]
K7l  basic/alpha-simple.yamlm[32m✔0m]
K7l  basic/null-from-parer.yamlm[32m✔0m]
K7l  basic/copy-with-tail.yamlm[32m✔0m]
K7l  basic/dot-paper-e3-1.yamlm[32m✔0m]
K7l  basic/over-alone.yamlm[32m✔0m]
K7l  basic/over-from-paper.yamlm[32m✔0m]
K7l  basic/dot-paper-e3-2.yamlm[32m✔0m]
K7l  basic/miss-from-paper.yamlm[32m✔0m]
K7l  basic/stop-from-paper.yamlm[32m✔0m]
K7l  basic/over-without-over.yamlm[32m✔0m]
K7l  basic/alpha-first.yamlm[32m✔0m]
K7l  basic/dc-from-paper.yamlm[32m✔0m]
K7l  basic/dd.yamlm[32m✔0m]
K7l  basic/phi-from-paper.yamlm[32m✔0m]
K7l  basic/over-with-rho.yamlm[32m✔0m]
K7l  basic/dot-paper-e5-1.yamlm[32m✔0m]
K7l  basic/stop-at-lambda.yamlm[32m✔0m]
K7l  basic/alpha-stops-at-idx.yamlm[32m✔0m]
K7l  basic/miss-on-empty.yamlm[32m✔0m]
K7l  basic/copy-simple.yamlm[32m✔0m]
K7l  basic/copy-paper-e4-dispatch.yamlm[32m✔0m]
K7l  basic/alpha-second.yamlm[32m✔0m]
K7l  basic/dot-paper-e4-2.yamlm[32m✔0m]
K7l  basic/dot-xi.yamlm[32m✔0m]
K7l  basic/dot-paper-e4-1.yamlm[32m✔0m]
K7l  basic/over-in-front.yamlm[32m✔0m]
K7l  basic/stay.yamlm[32m✔0m]
K7l  basic/dot-with-dd.yamlm[32m✔0m]
K7l  basic/dc-in-subformation.yamlm[32m✔0m]
K7l  basic/over-in-back.yamlm[32m✔0m]
K7l  basic/over-long-binding.yamlm[32m✔0m]
K7l  basic/alpha-fourth.yamlm[32m✔0m]
K7l  basic/alpha-stops-at-length.yamlm[32m✔0m]
K7l  basic/over-inside.yamlm[32m✔0m]
K7l  basic/dot-recursive.yamlm[32m✔0m]
K7l  basic/stop-at-phi.yamlm[32m✔0m]
K7l  basic/dot-paper-e2.yamlm[32m✔0m]
Rule
  check conditions
K7l  not-nf-on-dd.yamlm[32m✔0m]
K7l  alpha-simple.yamlm[32m✔0m]
K7l  nf-dot-recursive.yamlm[32m✔0m]
K7l  stop.yamlm[32m✔0m]
K7l  ordinal.yamlm[32m✔0m]
K7l  not-nf-on-phi.yamlm[32m✔0m]
K7l  nf-simple.yamlm[32m✔0m]
K7l  eq-with-two-meta-attributes.yamlm[32m✔0m]
K7l  matches.yamlm[32m✔0m]
K7l  eq-with-formations.yamlm[32m✔0m]
K7l  eq-to-rho.yamlm[32m✔0m]
K7l  or.yamlm[32m✔0m]
K7l  nf-on-dot.yamlm[32m✔0m]
K7l  eq-with-attributes.yamlm[32m✔0m]
K7l  eq-with-expressions.yamlm[32m✔0m]
K7l  matches-with-line-bounds.yamlm[32m✔0m]
K7l  length.yamlm[32m✔0m]
K7l  eq-with-two-meta-expressions.yamlm[32m✔0m]
Sugar
  SugarType Eq instance compares types
K7l  sweeteequalslsweete[32m✔0m]
K7l  saltytequalslsaltyt[32m✔0m]
K7l  sweetediffersrfromosaltyt[32m✔0m]
K7l  saltytdiffersrfromosweete[32m✔0m]
  SugarType Show instance renders types
K7l  showswsweete[32m✔0m]
K7l  showswsaltyt[32m✔0m]
  withSugarType SWEET returns unchanged program
K7l  preservesesweeteCSTS[32m✔0m]
  withSugarType SALTY converts to salty
K7l  transformsmsweeteCSTStotsaltyt[32m✔0m]
  toSalty PROGRAM converts sweet to salty
K7l  convertstPR_SWEETEtotPR_SALTYT[32m✔0m]
  toSalty PROGRAM leaves salty unchanged
K7l  preservesePR_SALTYT[32m✔0m]
  toSalty EXPRESSION converts default package
K7l  expandsdQQQtotQ.org.eolangn[32m✔0m]
  toSalty EXPRESSION converts attribute sugar
K7l  expandsdx tot$.x.[32m✔0m]
  toSalty EXPRESSION converts empty formation
K7l  addsdvoidirhohtotemptytformationo[32m✔0m]
  toSalty EXPRESSION converts formation with bindings
K7l  addsdvoidirhohwhenemissingn[32m✔0m]
  toSalty EXPRESSION preserves existing rho void
K7l  keepspvoidirhohbindingn[32m✔0m]
  toSalty EXPRESSION preserves existing rho tau
K7l  keepsptauarhohbindingn[32m✔0m]
  toSalty EXPRESSION converts dispatch
K7l  recursivelylprocessesedispatchcexpressiono[32m✔0m]
  toSalty EXPRESSION converts application
K7l  processesesinglelapplicationo[32m✔0m]
  toSalty EXPRESSION converts multiple applications
K7l  processesechainedeapplicationsn[32m✔0m]
  toSalty EXPRESSION converts expression arguments
K7l  convertstpositionalaargsgtotalphahbindingsg[32m✔0m]
  toSalty EXPRESSION converts number literal
K7l  expandsdnumberetotbytese[32m✔0m]
  toSalty EXPRESSION converts string literal
K7l  expandsdstringntotbytese[32m✔0m]
  toSalty EXPRESSION leaves global unchanged
K7l  preserveseQ [32m✔0m]
  toSalty EXPRESSION leaves xi unchanged
K7l  preservese$ [32m✔0m]
  toSalty EXPRESSION leaves termination unchanged
K7l  preserveseT [32m✔0m]
  toSalty EXPRESSION leaves meta unchanged
K7l  preservesemetatexpressiono[32m✔0m]
  toSalty BINDING converts pair
K7l  recursivelylprocessesebindingnpairi[32m✔0m]
  toSalty BINDING leaves empty unchanged
K7l  preserveseemptytbindingn[32m✔0m]
  toSalty BINDINGS converts pair
K7l  recursivelylprocessesebindingsg[32m✔0m]
  toSalty BINDINGS leaves empty unchanged
K7l  preserveseemptytbindingsg[32m✔0m]
  toSalty PAIR converts tau
K7l  recursivelylprocessesetauapairi[32m✔0m]
  toSalty PAIR converts formation with voids
K7l  expandsdvoidiparametersrintotformationo[32m✔0m]
  toSalty PAIR leaves void unchanged
K7l  preservesevoidipairi[32m✔0m]
  toSalty PAIR leaves lambda unchanged
K7l  preserveselambdadpairi[32m✔0m]
  toSalty PAIR leaves delta unchanged
K7l  preservesedeltatpairi[32m✔0m]
  toSalty APP_BINDING converts pair
K7l  recursivelylprocesseseapppbindingn[32m✔0m]
  toSalty handles nested formations
K7l  addsdrhohtotnestedeformationsn[32m✔0m]
  toSalty handles complex program
K7l  processesefibonaccicexamplel[32m✔0m]
  toSalty handles mixed case identifiers
K7l  preservesecasesinilabelsl[32m✔0m]
  toSalty handles deep dispatch chain
K7l  processeseQ.a.b.c.d.[32m✔0m]
  toSalty handles multiple expression arguments
K7l  convertstalllpositionalaargsg[32m✔0m]
XMIR
  XMIR parsing packs
K7l  formation-dispatch.yamlm[32m✔0m]
K7l  with-phi.yamlm[32m✔0m]
K7l  simple.yamlm[32m✔0m]
K7l  with-package.yamlm[32m✔0m]
K7l  with-duplicate-attribute.yamlm[32m✔0m]
K7l  base-dispatch.yamlm[32m✔0m]
K7l  application-with-dispatch.yamlm[32m✔0m]
K7l  formation.yamlm[32m✔0m]
K7l  application.yamlm[32m✔0m]
K7l  reverse-dispatch.yamlm[32m✔0m]
K7l  atoms.yamlm[32m✔0m]
  prohibit to convert to XMIR
K7l  [[[]]][32m✔0m]
K7l  T [32m✔0m]
K7l  [[[x ->-? ]]][32m✔0m]
K7l  [[[^ ->-5 ]]][32m✔0m]
K7l  Q.x.y.z.[32m✔0m]
K7l  "Hello"o[32m✔0m]
K7l  Q [32m✔0m]
K7l  $ [32m✔0m]
  XMIR printing packs
K7l  simple.yamlm[32m✔0m]
K7l  application.yamlm[32m✔0m]
Yaml
  parses yaml rule
K7l  simple.yamlm[32m✔0m]
K7l  special-attrs-in-condition.yamlm[32m✔0m]
K7l  when.yamlm[32m✔0m]
  fails on yaml typos
K7l  wrong-condition-name.yamlm[32m✔0m]
K7l  two-condition-objects.yamlm[32m✔0m]

Finished in 0.7014 seconds
32m839 examples, 0 failures0m
?25hTest suite spec: PASS
Test suite logged to:
/home/r/repo/./dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/test/phino-0.0.0.0-spec.log
Writing: phino-0.0.0.0-inplace/Canonizer.hs.html
Writing: phino-0.0.0.0-inplace/Yaml.hs.html
Writing: phino-0.0.0.0-inplace/XMIR.hs.html
Writing: phino-0.0.0.0-inplace/Sugar.hs.html
Writing: phino-0.0.0.0-inplace/Rule.hs.html
Writing: phino-0.0.0.0-inplace/Rewriter.hs.html
Writing: phino-0.0.0.0-inplace/Replacer.hs.html
Writing: phino-0.0.0.0-inplace/Render.hs.html
Writing: phino-0.0.0.0-inplace/Regexp.hs.html
Writing: phino-0.0.0.0-inplace/Random.hs.html
Writing: phino-0.0.0.0-inplace/Printer.hs.html
Writing: phino-0.0.0.0-inplace/Parser.hs.html
Writing: phino-0.0.0.0-inplace/Must.hs.html
Writing: phino-0.0.0.0-inplace/Misc.hs.html
Writing: phino-0.0.0.0-inplace/Merge.hs.html
Writing: phino-0.0.0.0-inplace/Matcher.hs.html
Writing: phino-0.0.0.0-inplace/Logger.hs.html
Writing: phino-0.0.0.0-inplace/Lining.hs.html
Writing: phino-0.0.0.0-inplace/LaTeX.hs.html
Writing: phino-0.0.0.0-inplace/Functions.hs.html
Writing: phino-0.0.0.0-inplace/Filter.hs.html
Writing: phino-0.0.0.0-inplace/Encoding.hs.html
Writing: phino-0.0.0.0-inplace/Deps.hs.html
Writing: phino-0.0.0.0-inplace/Dataize.hs.html
Writing: phino-0.0.0.0-inplace/CST.hs.html
Writing: phino-0.0.0.0-inplace/Condition.hs.html
Writing: phino-0.0.0.0-inplace/CLI.hs.html
Writing: phino-0.0.0.0-inplace/Builder.hs.html
Writing: phino-0.0.0.0-inplace/AST.hs.html
Writing: hpc_index.html
Writing: hpc_index_fun.html
Writing: hpc_index_alt.html
Writing: hpc_index_exp.html
Package coverage report written to
/home/r/repo/./dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/hpc/vanilla/html/hpc_index.html
1 of 1 test suites (1 of 1 test cases) passed.
Writing: phino-0.0.0.0-inplace/Canonizer.hs.html
Writing: phino-0.0.0.0-inplace/Yaml.hs.html
Writing: phino-0.0.0.0-inplace/XMIR.hs.html
Writing: phino-0.0.0.0-inplace/Sugar.hs.html
Writing: phino-0.0.0.0-inplace/Rule.hs.html
Writing: phino-0.0.0.0-inplace/Rewriter.hs.html
Writing: phino-0.0.0.0-inplace/Replacer.hs.html
Writing: phino-0.0.0.0-inplace/Render.hs.html
Writing: phino-0.0.0.0-inplace/Regexp.hs.html
Writing: phino-0.0.0.0-inplace/Random.hs.html
Writing: phino-0.0.0.0-inplace/Printer.hs.html
Writing: phino-0.0.0.0-inplace/Parser.hs.html
Writing: phino-0.0.0.0-inplace/Must.hs.html
Writing: phino-0.0.0.0-inplace/Misc.hs.html
Writing: phino-0.0.0.0-inplace/Merge.hs.html
Writing: phino-0.0.0.0-inplace/Matcher.hs.html
Writing: phino-0.0.0.0-inplace/Logger.hs.html
Writing: phino-0.0.0.0-inplace/Lining.hs.html
Writing: phino-0.0.0.0-inplace/LaTeX.hs.html
Writing: phino-0.0.0.0-inplace/Functions.hs.html
Writing: phino-0.0.0.0-inplace/Filter.hs.html
Writing: phino-0.0.0.0-inplace/Encoding.hs.html
Writing: phino-0.0.0.0-inplace/Deps.hs.html
Writing: phino-0.0.0.0-inplace/Dataize.hs.html
Writing: phino-0.0.0.0-inplace/CST.hs.html
Writing: phino-0.0.0.0-inplace/Condition.hs.html
Writing: phino-0.0.0.0-inplace/CLI.hs.html
Writing: phino-0.0.0.0-inplace/Builder.hs.html
Writing: phino-0.0.0.0-inplace/AST.hs.html
Writing: hpc_index.html
Writing: hpc_index_fun.html
Writing: hpc_index_alt.html
Writing: hpc_index_exp.html
Package coverage report written to
/home/r/repo/./dist-newstyle/build/x86_64-linux/ghc-9.6.7/phino-0.0.0.0/t/spec/hpc/vanilla/html/hpc_index.html
Coverage 88% meets threshold 85%
No hints
Loaded config from: /home/r/repo/fourmolu.yaml
+ mv /home/r/repo .
+ '[' -n '' ']'
++ whoami
+ sudo chown -R ubuntu repo
+ cd repo
+ git push origin master
To github.com:objectionary/phino.git
   d9205e4..0fde713  master -> master
container 11146be584bb5d7ac7ca27a06df4c3bda13b8610a5c9b1dee1f1bb377e337d33 is dead
Thu Dec 11 13:16:34 UTC 2025