diff --git a/Makefile b/Makefile
index 3423f00..3191990 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-.PHONY: test test-stress test-unit test-e2e test-e2e-sequential test-file deps lint dev test-repo dev-repo setup-gh demo
+.PHONY: test test-stress test-unit test-e2e test-e2e-sequential test-file deps lint dev test-repo dev-repo setup-gh demo demo-basics demo-advanced demo-forge
# Run plugin in development mode
dev:
@@ -79,10 +79,20 @@ format:
echo "stylua not installed"; \
fi
-# Record demo and generate all output formats (cast, v2 cast, gif)
+# Record all demos (basics, advanced, forge)
demo:
./scripts/record-demo.sh
+# Record individual demos
+demo-basics:
+ ./scripts/record-demo.sh basics
+
+demo-advanced:
+ ./scripts/record-demo.sh advanced
+
+demo-forge:
+ ./scripts/record-demo.sh forge
+
# Clean test artifacts
clean:
rm -rf .tests/
diff --git a/README.md b/README.md
index 18aa69e..09e6d96 100644
--- a/README.md
+++ b/README.md
@@ -4,10 +4,10 @@ A performance-focused, magit-inspired git interface for Neovim.
-
+
- Interactive demo
+ Interactive demos — core workflow, advanced diff, and GitHub integration
## Installation
diff --git a/docs/demo-advanced-v2.cast b/docs/demo-advanced-v2.cast
new file mode 100644
index 0000000..292ef05
--- /dev/null
+++ b/docs/demo-advanced-v2.cast
@@ -0,0 +1,204 @@
+{"version":2,"width":130,"height":42,"timestamp":1772019855,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/nix/store/ngqf98amj0hv0jhzhz540p03wxjj0chj-bash-interactive-5.3p9/bin/bash"}}
+[0.012, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
+[0.018, "o", "\u001b]11;?\u0007"]
+[0.029, "o", "\u001bP+q4D73\u001b\\"]
+[0.029, "o", "\u001b[?25l\u001b[?2031h\u001b[>4;2m\u001b[m\u000f\u001b[H \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.029, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.029, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.029, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.029, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.029, "o", " \r\n \r\n \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[H \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n "]
+[0.029, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
+[0.029, "o", " \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
+[0.029, "o", " \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNvim is open source and freely distributable\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mhttps://neovim.io/#chat\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ "]
+[0.029, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.029, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.029, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
+[0.111, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
+[1.731, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
+[1.744, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
+[1.8, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[1.8, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
+[1.82, "o", "\u001b[?25l"]
+[1.848, "o", "\u001b[34h\u001b[?25h"]
+[1.864, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
+[1.914, "o", "\u001b[?25l"]
+[1.925, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138"]
+[1.925, "o", ";169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js "]
+[1.925, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
+[1.925, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;1"]
+[1.925, "o", "13;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} "]
+[1.925, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m"]
+[1.925, "o", "\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/pr"]
+[1.925, "o", "ivate/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31"]
+[1.925, "o", ";31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[1.925, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[1.925, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and te"]
+[1.925, "o", "st runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
+[4.033, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[4.235, "o", "\u001b[?25l\u001b[7B\u001b[34h\u001b[?25h"]
+[4.436, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[5.846, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[5.846, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[5.846, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[5.846, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[5.846, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[5.846, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[5.846, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[5.846, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;"]
+[5.846, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[5.846, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[18;46H╭\u001b[18;47H─\u001b[18;48H─\u001b[18;49H─\u001b[18;50H─\u001b[18;51H─\u001b[18;52H─\u001b[18;53H─\u001b[18;54H─\u001b[18;55H─\u001b[18;56H─\u001b[18;57H─\u001b[18;58H─\u001b[18;59H─\u001b[18;60H─\u001b[18;61H─\u001b[18;62H─\u001b[18;63H─\u001b[18;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[18;71H─\u001b[18;72H─\u001b[18;73H─\u001b[18;74H─\u001b[18;"]
+[5.846, "o", "75H─\u001b[18;76H─\u001b[18;77H─\u001b[18;78H─\u001b[18;79H─\u001b[18;80H─\u001b[18;81H─\u001b[18;82H─\u001b[18;83H─\u001b[18;84H─\u001b[18;85H─\u001b[18;86H─\u001b[18;87H╮\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiffing\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff (dwim) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff staged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff unstaged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48"]
+[5.846, "o", ";2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Build range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H╰\u001b[26;47H─\u001b[26;48H─\u001b[26;49H─\u001b[26;50H─\u001b[26;51H─\u001b[26;52H─\u001b[26;53H─\u001b[26;54H─\u001b[26;55H─\u001b[26;56H─\u001b[26;57H─\u001b[26;58H─\u001b[26;59H─\u001b[26;60H─\u001b[26;61H─\u001b[26;62H─\u001b[26;63H─\u001b[26;64H─\u001b[26;65H─\u001b[26;66H─\u001b[26;67H─\u001b[26;68H─\u001b[26;69H─\u001b[26;70H─\u001b[26;71H─\u001b[26;72H─\u001b[26;73H─\u001b[26;74H─\u001b[26;75H─\u001b[26;76H─\u001b[26;77H─\u001b[26;78H─\u001b[26;79H─\u001b[26;80H─\u001b[26;81H─\u001b[26;82H─\u001b[2"]
+[5.846, "o", "6;83H─\u001b[26;84H─\u001b[26;85H─\u001b[26;86H─\u001b[26;87H╯\u001b[19;47H\u001b[34h\u001b[?25h"]
+[7.041, "o", "\u001b[?25l\u001b[18;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;47H"]
+[7.073, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[7.073, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
+[7.073, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
+[7.073, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
+[7.073, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[7.073, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[7.073, "o", ";2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[7.073, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;21"]
+[7.073, "o", "5;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[7.073, "o", "1;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[23;3H\u001b[34h\u001b[?25h"]
+[7.125, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ docs\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ R API.md -> API-REFERE..."]
+[7.125, "o", " +4 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-1\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ components\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Card.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+19\r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ utils\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validator.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[7.125, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│"]
+[7.125, "o", "\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42mAPI Documentation\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[7.125, "o", " \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a list of users. \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPOST /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mCreates a new user. \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 "]
+[7.125, "o", " \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user. \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[17;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[18;37H~ \u001b[19;37H~ \u001b[20;37H~ \u001b[21;37H~ "]
+[7.125, "o", " \u001b[22;37H~ \u001b[23;37H~ \u001b[24;37H~ \u001b[25;37H~ \u001b[26;37H~ \u001b[27;37H~ \u001b[28;37H~ \u001b[29;37H~ \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37"]
+[7.125, "o", "H~ \u001b[40;37H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;88H│\u001b[4;88H│\u001b[5;88H│\u001b[6;88H│\u001b[7;88H│\u001b[8;88H│\u001b[9;88H│\u001b[10;88H│\u001b[11;88H│\u001b[12;88H│\u001b[13;88H│\u001b[14;88H│\u001b[15;88H│\u001b[16;88H│\u001b[17;88H│\u001b[18;88H│\u001b[19;88H│\u001b[20;88H│\u001b[21;88H│\u001b[22;88H│\u001b[23;88H│\u001b[24;88H│\u001b[25;88H│\u001b[26;88H│\u001b[27;88H│\u001b[28;88H│\u001b[29;88H│\u001b[30;88H│\u001b[31;88H│\u001b[32;88H│\u001b[33;88H│\u001b[34;88H│\u001b[35;88H│\u001b[36;88H│\u001b[37;88H│\u001b[38;88H│\u001b[39;88H│\u001b[40;88H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mAPI Reference\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[3;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48"]
+[7.125, "o", ";2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a list of users. \u001b[8;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPOST /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;22"]
+[7.125, "o", "0;215;186m\u001b[48;2;31;31;40mCreates a new user. \u001b[11;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user. \u001b[14;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[15;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mDELETE /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[16;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mDeletes a specific user. \u001b[17;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40"]
+[7.125, "o", "m~ \u001b[18;89H~ \u001b[19;89H~ \u001b[20;89H~ \u001b[21;89H~ \u001b[22;89H~ \u001b[23;89H~ \u001b[24;89H~ \u001b[25;89H~ \u001b[26;89H~ \u001b[27;89H~ \u001b[28;89H~ \u001b[29;89H~ \u001b[30;89H~ \u001b[31;89H~ \u001b[32;89H~ \u001b[33;89H~ \u001b[34;89H~ \u001b[35;89H~ \u001b[36;89H~ \u001b[37;89H~ "]
+[7.125, "o", " \u001b[38;89H~ \u001b[39;89H~ \u001b[40;89H~ \u001b[41;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://diff/docs/API-REFERENCE.md \r\u001b[39A\u001b[34h\u001b[?25h"]
+[10.076, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m Files (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\n\n\u001b[34h\u001b[?25h"]
+[11.478, "o", "\u001b[?25l\n\n\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m Card.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+19\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\u001b[8;1H\u001b[34h\u001b[?25h"]
+[15.488, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;"]
+[15.488, "o", "210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt "]
+[15.488, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;1"]
+[15.488, "o", "86m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m"]
+[15.488, "o", "\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
+[15.488, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[15.488, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
+[15.488, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[15.488, "o", "31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[15.489, "o", "3;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[15.489, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;"]
+[15.489, "o", "42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[23;3H\u001b[34h\u001b[?25h"]
+[16.586, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[16.786, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[18.192, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[18.192, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[18.192, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[18.192, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[18.192, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[18.192, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[18.192, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[18.193, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;"]
+[18.193, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[18.193, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[18;46H╭\u001b[18;47H─\u001b[18;48H─\u001b[18;49H─\u001b[18;50H─\u001b[18;51H─\u001b[18;52H─\u001b[18;53H─\u001b[18;54H─\u001b[18;55H─\u001b[18;56H─\u001b[18;57H─\u001b[18;58H─\u001b[18;59H─\u001b[18;60H─\u001b[18;61H─\u001b[18;62H─\u001b[18;63H─\u001b[18;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[18;71H─\u001b[18;72H─\u001b[18;73H─\u001b[18;74H─\u001b[18;"]
+[18.193, "o", "75H─\u001b[18;76H─\u001b[18;77H─\u001b[18;78H─\u001b[18;79H─\u001b[18;80H─\u001b[18;81H─\u001b[18;82H─\u001b[18;83H─\u001b[18;84H─\u001b[18;85H─\u001b[18;86H─\u001b[18;87H╮\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiffing\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff (dwim) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff staged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff unstaged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48"]
+[18.193, "o", ";2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Build range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H╰\u001b[26;47H─\u001b[26;48H─\u001b[26;49H─\u001b[26;50H─\u001b[26;51H─\u001b[26;52H─\u001b[26;53H─\u001b[26;54H─\u001b[26;55H─\u001b[26;56H─\u001b[26;57H─\u001b[26;58H─\u001b[26;59H─\u001b[26;60H─\u001b[26;61H─\u001b[26;62H─\u001b[26;63H─\u001b[26;64H─\u001b[26;65H─\u001b[26;66H─\u001b[26;67H─\u001b[26;68H─\u001b[26;69H─\u001b[26;70H─\u001b[26;71H─\u001b[26;72H─\u001b[26;73H─\u001b[26;74H─\u001b[26;75H─\u001b[26;76H─\u001b[26;77H─\u001b[26;78H─\u001b[26;79H─\u001b[26;80H─\u001b[26;81H─\u001b[26;82H─\u001b[2"]
+[18.193, "o", "6;83H─\u001b[26;84H─\u001b[26;85H─\u001b[26;86H─\u001b[26;87H╯\u001b[19;47H\u001b[34h\u001b[?25h"]
+[19.393, "o", "\u001b[?25l\u001b[18;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;47H"]
+[19.428, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[19.428, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
+[19.429, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
+[19.429, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
+[19.429, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[19.429, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[19.429, "o", ";2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[19.429, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;21"]
+[19.429, "o", "5;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[19.429, "o", "1;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[33;3H\u001b[34h\u001b[?25h"]
+[19.49, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (8)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ docs\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ R API-REFERENCE.md "]
+[19.49, "o", " +4 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-1\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ components\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Button.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+12\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Card.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+19\r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ utils\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m helpers.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+13\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36"]
+[19.49, "o", ";43m-1\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validator.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m config.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+4\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+16\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m lib \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+1\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-1\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ "]
+[19.49, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[1"]
+[19.49, "o", "4;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42mAPI Documentation\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42"]
+[19.49, "o", ";55m 5 \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m ·\u001b[6;48H·\u001b[6;49H·\u001b[6;50H·\u001b[6;51H 5 unchanged li\u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user.\u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[13;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[14;37H~ \u001b[15;37H~ \u001b[16;37H~ "]
+[19.49, "o", " \u001b[17;37H~ \u001b[18;37H~ \u001b[19;37H~ \u001b[20;37H~ \u001b[21;37H~ \u001b[22;37H~ \u001b[23;37H~ \u001b[24;37H~ \u001b[25;37H~ \u001b[26;37H~ \u001b[27;37H~ \u001b[28;37H~ \u001b[29;37H~ \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37H~ \u001b[40;37H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;66H│\u001b[4;66H│\u001b[5;66H│\u001b[6;66H│\u001b[7;66H│\u001b[8;66H│\u001b[9;66H│\u001b["]
+[19.49, "o", "10;66H│\u001b[11;66H│\u001b[12;66H│\u001b[13;66H│\u001b[14;66H│\u001b[15;66H│\u001b[16;66H│\u001b[17;66H│\u001b[18;66H│\u001b[19;66H│\u001b[20;66H│\u001b[21;66H│\u001b[22;66H│\u001b[23;66H│\u001b[24;66H│\u001b[25;66H│\u001b[26;66H│\u001b[27;66H│\u001b[28;66H│\u001b[29;66H│\u001b[30;66H│\u001b[31;66H│\u001b[32;66H│\u001b[33;66H│\u001b[34;66H│\u001b[35;66H│\u001b[36;66H│\u001b[37;66H│\u001b[38;66H│\u001b[39;66H│\u001b[40;66H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mAPI Reference\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[3;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[19.49, "o", " \u001b[6;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m ·\u001b[6;78H·\u001b[6;79H·\u001b[6;80H·\u001b[6;81H 5 unchanged lines\u001b[7;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user. \u001b[10;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[11;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mDELETE /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[12;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mDeletes a specific user. \u001b[13;67H\u001b[m\u000f"]
+[19.49, "o", "\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[14;67H~ \u001b[15;67H~ \u001b[16;67H~ \u001b[17;67H~ \u001b[18;67H~ \u001b[19;67H~ \u001b[20;67H~ \u001b[21;67H~ \u001b[22;67H~ \u001b[23;67H~ \u001b[24;67H~ \u001b[25;67H~ \u001b[26;67H~ \u001b[27;67H~ \u001b[28;67H~ \u001b[29;67H~ \u001b[30;67H~ \u001b[31;67H~ \u001b[32;67H~ \u001b[33;67H~ \u001b[34;67H~ \u001b[35;67H~ \u001b[36;67H~ \u001b[37;67H~ "]
+[19.49, "o", "\u001b[38;67H~ \u001b[39;67H~ \u001b[40;67H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;99H│\u001b[4;99H│\u001b[5;99H│\u001b[6;99H│\u001b[7;99H│\u001b[8;99H│\u001b[9;99H│\u001b[10;99H│\u001b[11;99H│\u001b[12;99H│\u001b[13;99H│\u001b[14;99H│\u001b[15;99H│\u001b[16;99H│\u001b[17;99H│\u001b[18;99H│\u001b[19;99H│\u001b[20;99H│\u001b[21;99H│\u001b[22;99H│\u001b[23;99H│\u001b[24;99H│\u001b[25;99H│\u001b[26;99H│\u001b[27;99H│\u001b[28;99H│\u001b[29;99H│\u001b[30;99H│\u001b[31;99H│\u001b[32;99H│\u001b[33;99H│\u001b[34;99H│\u001b[35;99H│\u001b[36;99H│\u001b[37;99H│\u001b[38;99H│\u001b[39;99H│\u001b[40;99H│\u001b[41;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt "]
+[25.534, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;1"]
+[25.534, "o", "86m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m"]
+[25.534, "o", "\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
+[25.534, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[25.534, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
+[25.534, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[25.534, "o", "31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[25.534, "o", "3;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[25.534, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;"]
+[25.534, "o", "42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[33;3H\u001b[34h\u001b[?25h"]
+[26.833, "o", "\u001b[?25l"]
+[26.948, "o", "\u001b[34h\u001b[?25h"]
+[27.178, "o", "\u001b[?25l\u001b[32A\u001b[m\u000f\u001b[38;2;255;158;59m\u001b[48;2;42;42;42m⚠\u001b[1;4H Stale (gr to refresh)\u001b[33;3H\u001b[34h\u001b[?25h"]
+[28.753, "o", "\u001b[?25l\u001b[32A\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[33;3H\u001b[34h\u001b[?25h"]
+[28.791, "o", "\u001b[?25l"]
+[28.824, "o", "\u001b[34h\u001b[?25h"]
+[28.834, "o", "\u001b[?25l\u001b[32A\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠹\u001b[33;3H\u001b[34h\u001b[?25h"]
+[28.892, "o", "\u001b[?25l"]
+[28.904, "o", "\u001b[32A\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[4;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mMerging: 1246a66 Update App component (will conflict)\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (7)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;7Hassets/new-image.bin\u001b[8;7Hdocs/API-REFERENCE.md \u001b[9;7Hnotes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Card.js\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js\u001b[12;3H? src/utils/cache.js\u001b[13;3H? src/utils/validator.js\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40"]
+[28.904, "o", "mUnstaged (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;7H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mConflicted (1)\u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m! src/components/App.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStashes (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mstash@{0}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWIP on main: 116d47b Wire up auth middleware and formatters\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[28.904, "o", " \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[27;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;4H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m16d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;1"]
+[28.904, "o", "14;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;4H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m16d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[28.904, "o", "31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and"]
+[28.904, "o", " test runner\u001b[34;3H\u001b[34h\u001b[?25h"]
+[30.55, "o", "\u001b[?25l\u001b[33A\u001b[34h\u001b[?25h"]
+[31.05, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[31.252, "o", "\u001b[?25l\u001b[9B\u001b[34h\u001b[?25h"]
+[31.453, "o", "\u001b[?25l\n\n\n\u001b[34h\u001b[?25h"]
+[32.555, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[34.158, "o", "\u001b[?25l"]
+[34.191, "o", "\u001b[34h\u001b[?25h"]
+[34.266, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src/components\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b["]
+[34.266, "o", "m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;54;54;70mU\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m App.js +10 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-10\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[34.267, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48"]
+[34.267, "o", ";2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mclass\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m App \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m constructor() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.name = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'MainApp\u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.version = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2"]
+[34.267, "o", ";31;31;40m'1.5.\u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m run() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;220;"]
+[34.267, "o", "215;186m\u001b[48;2;74;42;42m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;74;42;42m`Startin\u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.initialize(); \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m initialize() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;"]
+[34.267, "o", "31;40m'Main br\u001b[21;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[22;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[23;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[24;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mmodule.exports = App; \u001b[28;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[29;37H~ "]
+[34.267, "o", " \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37H~ \u001b[40;37H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;66H│\u001b[4;66H│\u001b[5;66H│\u001b[6;66H│\u001b[7;66H│\u001b[8;66H│\u001b[9;66H│\u001b[10;66H│\u001b[11;66H│\u001b[12;66H│\u001b[13;66H│\u001b[14;66H│\u001b[15;66H│\u001b[16;66H│\u001b[17;66H│\u001b[18;66H│\u001b[19;66H│\u001b[20;66H│\u001b[21;66H│\u001b[22;66H│\u001b[23;66H│\u001b[24;66H│\u001b[25;66H│\u001b[26;66H│\u001b[27;66H│\u001b[28;66H│\u001b[29;66H│\u001b[30;66H│\u001b[31;66H│\u001b[32;66H│\u001b[33;66H│\u001b[34;66H│\u001b[35;66H│\u001b[36;66H│\u001b[37;66H│\u001b[38;66H│\u001b[39;66H│\u001b[40;66H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;"]
+[34.267, "o", "2;31;31;40mclass\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m App \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m constructor() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m<<<<<<< HEAD \u001b[5;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.name = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'MainApp'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m; \u001b[6;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.version = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'1.5.0'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m;\u001b[7;67H\u001b[m\u000f\u001b[38;2;8"]
+[34.267, "o", "4;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m======= \u001b[8;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m.name = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'ConflictAp\u001b[9;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m.version = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'2.0.0'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m;\u001b[10;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m>>>>>>> feature/conflict-me\u001b[11;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[34.267, "o", " \u001b[13;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m run() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m`Running \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42m${\u001b[15;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.initialize(); \u001b[16;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m initialize() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48"]
+[34.267, "o", ";2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m<<<<<<< HEAD \u001b[20;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'Main branc\u001b[21;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m======= \u001b[22;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'Conflict b\u001b[23;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m>>>>>>> feature/conflict-me\u001b[24;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;"]
+[34.267, "o", "186m\u001b[48;2;31;31;40m \u001b[26;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mmodule.exports = App; \u001b[28;67H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[29;67H~ \u001b[30;67H~ \u001b[31;67H~ \u001b[32;67H~ \u001b[33;67H~ \u001b[34;67H~ \u001b[35;67H~ \u001b[36;67H~ \u001b[37;67H~ \u001b[38;67H~ \u001b[39;67H~ \u001b[40;67H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;99H│\u001b[4;99H│\u001b[5;99H│\u001b[6;99H│\u001b[7;99H│\u001b[8;99H│\u001b[9;99H│\u001b[10;99H│\u001b[11;99H│\u001b[12;99H│\u001b[13;99H│\u001b[14;99H│\u001b[15;99H│\u001b[16;99H"]
+[34.267, "o", "│\u001b[17;99H│\u001b[18;99H│\u001b[19;99H│\u001b[20;99H│\u001b[21;99H│\u001b[22;99H│\u001b[23;99H│\u001b[24;99H│\u001b[25;99H│\u001b[26;99H│\u001b[27;99H│\u001b[28;99H│\u001b[29;99H│\u001b[30;99H│\u001b[31;99H│\u001b[32;99H│\u001b[33;99H│\u001b[34;99H│\u001b[35;99H│\u001b[36;99H│\u001b[37;99H│\u001b[38;99H│\u001b[39;99H│\u001b[40;99H│\u001b[41;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
+[48.52, "o", "\u001b[?25l\r\u001b[42;1H\u001b[?1049l\u001b[34h\u001b[?25h"]
+[48.521, "x", "0"]
diff --git a/docs/demo-advanced.cast b/docs/demo-advanced.cast
new file mode 100644
index 0000000..bc93959
--- /dev/null
+++ b/docs/demo-advanced.cast
@@ -0,0 +1,204 @@
+{"version":3,"term":{"cols":130,"rows":42,"type":"tmux-256color","version":"tmux 3.6a"},"timestamp":1772019855,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/nix/store/ngqf98amj0hv0jhzhz540p03wxjj0chj-bash-interactive-5.3p9/bin/bash"}}
+[0.012, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
+[0.006, "o", "\u001b]11;?\u0007"]
+[0.011, "o", "\u001bP+q4D73\u001b\\"]
+[0.000, "o", "\u001b[?25l\u001b[?2031h\u001b[>4;2m\u001b[m\u000f\u001b[H \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[H \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n "]
+[0.000, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNvim is open source and freely distributable\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mhttps://neovim.io/#chat\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.000, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
+[0.082, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
+[1.620, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
+[0.013, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
+[0.056, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[0.000, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
+[0.020, "o", "\u001b[?25l"]
+[0.028, "o", "\u001b[34h\u001b[?25h"]
+[0.016, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
+[0.050, "o", "\u001b[?25l"]
+[0.011, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138"]
+[0.000, "o", ";169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;1"]
+[0.000, "o", "13;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m"]
+[0.000, "o", "\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/pr"]
+[0.000, "o", "ivate/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31"]
+[0.000, "o", ";31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and te"]
+[0.000, "o", "st runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
+[2.108, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[0.202, "o", "\u001b[?25l\u001b[7B\u001b[34h\u001b[?25h"]
+[0.201, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[1.410, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[0.000, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[18;46H╭\u001b[18;47H─\u001b[18;48H─\u001b[18;49H─\u001b[18;50H─\u001b[18;51H─\u001b[18;52H─\u001b[18;53H─\u001b[18;54H─\u001b[18;55H─\u001b[18;56H─\u001b[18;57H─\u001b[18;58H─\u001b[18;59H─\u001b[18;60H─\u001b[18;61H─\u001b[18;62H─\u001b[18;63H─\u001b[18;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[18;71H─\u001b[18;72H─\u001b[18;73H─\u001b[18;74H─\u001b[18;"]
+[0.000, "o", "75H─\u001b[18;76H─\u001b[18;77H─\u001b[18;78H─\u001b[18;79H─\u001b[18;80H─\u001b[18;81H─\u001b[18;82H─\u001b[18;83H─\u001b[18;84H─\u001b[18;85H─\u001b[18;86H─\u001b[18;87H╮\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiffing\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff (dwim) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff staged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff unstaged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48"]
+[0.000, "o", ";2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Build range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H╰\u001b[26;47H─\u001b[26;48H─\u001b[26;49H─\u001b[26;50H─\u001b[26;51H─\u001b[26;52H─\u001b[26;53H─\u001b[26;54H─\u001b[26;55H─\u001b[26;56H─\u001b[26;57H─\u001b[26;58H─\u001b[26;59H─\u001b[26;60H─\u001b[26;61H─\u001b[26;62H─\u001b[26;63H─\u001b[26;64H─\u001b[26;65H─\u001b[26;66H─\u001b[26;67H─\u001b[26;68H─\u001b[26;69H─\u001b[26;70H─\u001b[26;71H─\u001b[26;72H─\u001b[26;73H─\u001b[26;74H─\u001b[26;75H─\u001b[26;76H─\u001b[26;77H─\u001b[26;78H─\u001b[26;79H─\u001b[26;80H─\u001b[26;81H─\u001b[26;82H─\u001b[2"]
+[0.000, "o", "6;83H─\u001b[26;84H─\u001b[26;85H─\u001b[26;86H─\u001b[26;87H╯\u001b[19;47H\u001b[34h\u001b[?25h"]
+[1.195, "o", "\u001b[?25l\u001b[18;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;47H"]
+[0.032, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
+[0.000, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
+[0.000, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
+[0.000, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[0.000, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[0.000, "o", ";2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;21"]
+[0.000, "o", "5;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[23;3H\u001b[34h\u001b[?25h"]
+[0.052, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ docs\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ R API.md -> API-REFERE..."]
+[0.000, "o", " +4 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-1\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ components\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Card.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+19\r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ utils\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validator.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│"]
+[0.000, "o", "\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42mAPI Documentation\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a list of users. \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPOST /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mCreates a new user. \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user. \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[17;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[18;37H~ \u001b[19;37H~ \u001b[20;37H~ \u001b[21;37H~ "]
+[0.000, "o", " \u001b[22;37H~ \u001b[23;37H~ \u001b[24;37H~ \u001b[25;37H~ \u001b[26;37H~ \u001b[27;37H~ \u001b[28;37H~ \u001b[29;37H~ \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37"]
+[0.000, "o", "H~ \u001b[40;37H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;88H│\u001b[4;88H│\u001b[5;88H│\u001b[6;88H│\u001b[7;88H│\u001b[8;88H│\u001b[9;88H│\u001b[10;88H│\u001b[11;88H│\u001b[12;88H│\u001b[13;88H│\u001b[14;88H│\u001b[15;88H│\u001b[16;88H│\u001b[17;88H│\u001b[18;88H│\u001b[19;88H│\u001b[20;88H│\u001b[21;88H│\u001b[22;88H│\u001b[23;88H│\u001b[24;88H│\u001b[25;88H│\u001b[26;88H│\u001b[27;88H│\u001b[28;88H│\u001b[29;88H│\u001b[30;88H│\u001b[31;88H│\u001b[32;88H│\u001b[33;88H│\u001b[34;88H│\u001b[35;88H│\u001b[36;88H│\u001b[37;88H│\u001b[38;88H│\u001b[39;88H│\u001b[40;88H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mAPI Reference\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[3;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48"]
+[0.000, "o", ";2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a list of users. \u001b[8;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPOST /users\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;22"]
+[0.000, "o", "0;215;186m\u001b[48;2;31;31;40mCreates a new user. \u001b[11;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user. \u001b[14;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[15;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mDELETE /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[16;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mDeletes a specific user. \u001b[17;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40"]
+[0.000, "o", "m~ \u001b[18;89H~ \u001b[19;89H~ \u001b[20;89H~ \u001b[21;89H~ \u001b[22;89H~ \u001b[23;89H~ \u001b[24;89H~ \u001b[25;89H~ \u001b[26;89H~ \u001b[27;89H~ \u001b[28;89H~ \u001b[29;89H~ \u001b[30;89H~ \u001b[31;89H~ \u001b[32;89H~ \u001b[33;89H~ \u001b[34;89H~ \u001b[35;89H~ \u001b[36;89H~ \u001b[37;89H~ "]
+[0.000, "o", " \u001b[38;89H~ \u001b[39;89H~ \u001b[40;89H~ \u001b[41;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://diff/docs/API-REFERENCE.md \r\u001b[39A\u001b[34h\u001b[?25h"]
+[2.951, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m Files (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\n\n\u001b[34h\u001b[?25h"]
+[1.402, "o", "\u001b[?25l\n\n\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m Card.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+19\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\u001b[8;1H\u001b[34h\u001b[?25h"]
+[4.010, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;1"]
+[0.000, "o", "86m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m"]
+[0.000, "o", "\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
+[0.000, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
+[0.000, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.000, "o", "31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[0.001, "o", "3;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;"]
+[0.000, "o", "42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[23;3H\u001b[34h\u001b[?25h"]
+[1.097, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[0.200, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[1.406, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.001, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[0.000, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[18;46H╭\u001b[18;47H─\u001b[18;48H─\u001b[18;49H─\u001b[18;50H─\u001b[18;51H─\u001b[18;52H─\u001b[18;53H─\u001b[18;54H─\u001b[18;55H─\u001b[18;56H─\u001b[18;57H─\u001b[18;58H─\u001b[18;59H─\u001b[18;60H─\u001b[18;61H─\u001b[18;62H─\u001b[18;63H─\u001b[18;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[18;71H─\u001b[18;72H─\u001b[18;73H─\u001b[18;74H─\u001b[18;"]
+[0.000, "o", "75H─\u001b[18;76H─\u001b[18;77H─\u001b[18;78H─\u001b[18;79H─\u001b[18;80H─\u001b[18;81H─\u001b[18;82H─\u001b[18;83H─\u001b[18;84H─\u001b[18;85H─\u001b[18;86H─\u001b[18;87H╮\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiffing\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff (dwim) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff staged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff unstaged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48"]
+[0.000, "o", ";2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Build range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H╰\u001b[26;47H─\u001b[26;48H─\u001b[26;49H─\u001b[26;50H─\u001b[26;51H─\u001b[26;52H─\u001b[26;53H─\u001b[26;54H─\u001b[26;55H─\u001b[26;56H─\u001b[26;57H─\u001b[26;58H─\u001b[26;59H─\u001b[26;60H─\u001b[26;61H─\u001b[26;62H─\u001b[26;63H─\u001b[26;64H─\u001b[26;65H─\u001b[26;66H─\u001b[26;67H─\u001b[26;68H─\u001b[26;69H─\u001b[26;70H─\u001b[26;71H─\u001b[26;72H─\u001b[26;73H─\u001b[26;74H─\u001b[26;75H─\u001b[26;76H─\u001b[26;77H─\u001b[26;78H─\u001b[26;79H─\u001b[26;80H─\u001b[26;81H─\u001b[26;82H─\u001b[2"]
+[0.000, "o", "6;83H─\u001b[26;84H─\u001b[26;85H─\u001b[26;86H─\u001b[26;87H╯\u001b[19;47H\u001b[34h\u001b[?25h"]
+[1.200, "o", "\u001b[?25l\u001b[18;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;47H"]
+[0.035, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
+[0.001, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
+[0.000, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
+[0.000, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[0.000, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[0.000, "o", ";2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;21"]
+[0.000, "o", "5;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[33;3H\u001b[34h\u001b[?25h"]
+[0.061, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (8)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ docs\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ R API-REFERENCE.md "]
+[0.000, "o", " +4 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-1\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ components\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Button.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+12\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Card.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+19\r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ utils\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m helpers.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+13\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36"]
+[0.000, "o", ";43m-1\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validator.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m config.js \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+4\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+16\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m lib \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+1\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-1\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[1"]
+[0.000, "o", "4;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42mAPI Documentation\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42"]
+[0.000, "o", ";55m 5 \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m ·\u001b[6;48H·\u001b[6;49H·\u001b[6;50H·\u001b[6;51H 5 unchanged li\u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user.\u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[13;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[14;37H~ \u001b[15;37H~ \u001b[16;37H~ "]
+[0.000, "o", " \u001b[17;37H~ \u001b[18;37H~ \u001b[19;37H~ \u001b[20;37H~ \u001b[21;37H~ \u001b[22;37H~ \u001b[23;37H~ \u001b[24;37H~ \u001b[25;37H~ \u001b[26;37H~ \u001b[27;37H~ \u001b[28;37H~ \u001b[29;37H~ \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37H~ \u001b[40;37H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;66H│\u001b[4;66H│\u001b[5;66H│\u001b[6;66H│\u001b[7;66H│\u001b[8;66H│\u001b[9;66H│\u001b["]
+[0.000, "o", "10;66H│\u001b[11;66H│\u001b[12;66H│\u001b[13;66H│\u001b[14;66H│\u001b[15;66H│\u001b[16;66H│\u001b[17;66H│\u001b[18;66H│\u001b[19;66H│\u001b[20;66H│\u001b[21;66H│\u001b[22;66H│\u001b[23;66H│\u001b[24;66H│\u001b[25;66H│\u001b[26;66H│\u001b[27;66H│\u001b[28;66H│\u001b[29;66H│\u001b[30;66H│\u001b[31;66H│\u001b[32;66H│\u001b[33;66H│\u001b[34;66H│\u001b[35;66H│\u001b[36;66H│\u001b[37;66H│\u001b[38;66H│\u001b[39;66H│\u001b[40;66H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mAPI Reference\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[3;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m## \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mEndpoints\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[6;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m ·\u001b[6;78H·\u001b[6;79H·\u001b[6;80H·\u001b[6;81H 5 unchanged lines\u001b[7;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mGET /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mReturns a specific user. \u001b[10;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[11;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m### \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mDELETE /users/:id\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[12;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mDeletes a specific user. \u001b[13;67H\u001b[m\u000f"]
+[0.000, "o", "\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[14;67H~ \u001b[15;67H~ \u001b[16;67H~ \u001b[17;67H~ \u001b[18;67H~ \u001b[19;67H~ \u001b[20;67H~ \u001b[21;67H~ \u001b[22;67H~ \u001b[23;67H~ \u001b[24;67H~ \u001b[25;67H~ \u001b[26;67H~ \u001b[27;67H~ \u001b[28;67H~ \u001b[29;67H~ \u001b[30;67H~ \u001b[31;67H~ \u001b[32;67H~ \u001b[33;67H~ \u001b[34;67H~ \u001b[35;67H~ \u001b[36;67H~ \u001b[37;67H~ "]
+[0.000, "o", "\u001b[38;67H~ \u001b[39;67H~ \u001b[40;67H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;99H│\u001b[4;99H│\u001b[5;99H│\u001b[6;99H│\u001b[7;99H│\u001b[8;99H│\u001b[9;99H│\u001b[10;99H│\u001b[11;99H│\u001b[12;99H│\u001b[13;99H│\u001b[14;99H│\u001b[15;99H│\u001b[16;99H│\u001b[17;99H│\u001b[18;99H│\u001b[19;99H│\u001b[20;99H│\u001b[21;99H│\u001b[22;99H│\u001b[23;99H│\u001b[24;99H│\u001b[25;99H│\u001b[26;99H│\u001b[27;99H│\u001b[28;99H│\u001b[29;99H│\u001b[30;99H│\u001b[31;99H│\u001b[32;99H│\u001b[33;99H│\u001b[34;99H│\u001b[35;99H│\u001b[36;99H│\u001b[37;99H│\u001b[38;99H│\u001b[39;99H│\u001b[40;99H│\u001b[41;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;1"]
+[0.000, "o", "86m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m"]
+[0.000, "o", "\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
+[0.000, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
+[0.000, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.000, "o", "31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[0.000, "o", "3;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m116d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;"]
+[0.000, "o", "42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1696c52\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[33;3H\u001b[34h\u001b[?25h"]
+[1.299, "o", "\u001b[?25l"]
+[0.115, "o", "\u001b[34h\u001b[?25h"]
+[0.230, "o", "\u001b[?25l\u001b[32A\u001b[m\u000f\u001b[38;2;255;158;59m\u001b[48;2;42;42;42m⚠\u001b[1;4H Stale (gr to refresh)\u001b[33;3H\u001b[34h\u001b[?25h"]
+[1.575, "o", "\u001b[?25l\u001b[32A\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[33;3H\u001b[34h\u001b[?25h"]
+[0.038, "o", "\u001b[?25l"]
+[0.033, "o", "\u001b[34h\u001b[?25h"]
+[0.010, "o", "\u001b[?25l\u001b[32A\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠹\u001b[33;3H\u001b[34h\u001b[?25h"]
+[0.058, "o", "\u001b[?25l"]
+[0.012, "o", "\u001b[32A\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[4;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mMerging: 1246a66 Update App component (will conflict)\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (7)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;7Hassets/new-image.bin\u001b[8;7Hdocs/API-REFERENCE.md \u001b[9;7Hnotes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Card.js\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js\u001b[12;3H? src/utils/cache.js\u001b[13;3H? src/utils/validator.js\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40"]
+[0.000, "o", "mUnstaged (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;7H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mConflicted (1)\u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m! src/components/App.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStashes (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mstash@{0}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWIP on main: 116d47b Wire up auth middleware and formatters\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[27;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;4H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m16d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;1"]
+[0.000, "o", "14;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;4H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m16d47b\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m13cde8e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[0.000, "o", "31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m989f949\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m22de096\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7398acf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m28dfd32\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and"]
+[0.000, "o", " test runner\u001b[34;3H\u001b[34h\u001b[?25h"]
+[1.646, "o", "\u001b[?25l\u001b[33A\u001b[34h\u001b[?25h"]
+[0.500, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
+[0.202, "o", "\u001b[?25l\u001b[9B\u001b[34h\u001b[?25h"]
+[0.201, "o", "\u001b[?25l\n\n\n\u001b[34h\u001b[?25h"]
+[1.102, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[1.603, "o", "\u001b[?25l"]
+[0.033, "o", "\u001b[34h\u001b[?25h"]
+[0.075, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src/components\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b["]
+[0.000, "o", "m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;54;54;70mU\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m App.js +10 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-10\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.001, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48"]
+[0.000, "o", ";2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mclass\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m App \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m constructor() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.name = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'MainApp\u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.version = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2"]
+[0.000, "o", ";31;31;40m'1.5.\u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m run() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;220;"]
+[0.000, "o", "215;186m\u001b[48;2;74;42;42m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;74;42;42m`Startin\u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.initialize(); \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m initialize() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;"]
+[0.000, "o", "31;40m'Main br\u001b[21;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[22;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[23;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[24;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mmodule.exports = App; \u001b[28;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[29;37H~ "]
+[0.000, "o", " \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37H~ \u001b[40;37H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;66H│\u001b[4;66H│\u001b[5;66H│\u001b[6;66H│\u001b[7;66H│\u001b[8;66H│\u001b[9;66H│\u001b[10;66H│\u001b[11;66H│\u001b[12;66H│\u001b[13;66H│\u001b[14;66H│\u001b[15;66H│\u001b[16;66H│\u001b[17;66H│\u001b[18;66H│\u001b[19;66H│\u001b[20;66H│\u001b[21;66H│\u001b[22;66H│\u001b[23;66H│\u001b[24;66H│\u001b[25;66H│\u001b[26;66H│\u001b[27;66H│\u001b[28;66H│\u001b[29;66H│\u001b[30;66H│\u001b[31;66H│\u001b[32;66H│\u001b[33;66H│\u001b[34;66H│\u001b[35;66H│\u001b[36;66H│\u001b[37;66H│\u001b[38;66H│\u001b[39;66H│\u001b[40;66H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;"]
+[0.000, "o", "2;31;31;40mclass\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m App \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m constructor() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m<<<<<<< HEAD \u001b[5;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.name = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'MainApp'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m; \u001b[6;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.version = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'1.5.0'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m;\u001b[7;67H\u001b[m\u000f\u001b[38;2;8"]
+[0.000, "o", "4;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m======= \u001b[8;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m.name = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'ConflictAp\u001b[9;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m.version = \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'2.0.0'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m;\u001b[10;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m>>>>>>> feature/conflict-me\u001b[11;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[13;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m run() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m`Running \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42m${\u001b[15;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m.initialize(); \u001b[16;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m initialize() \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48"]
+[0.000, "o", ";2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m<<<<<<< HEAD \u001b[20;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m'Main branc\u001b[21;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m======= \u001b[22;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m console.log(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'Conflict b\u001b[23;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m>>>>>>> feature/conflict-me\u001b[24;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;"]
+[0.000, "o", "186m\u001b[48;2;31;31;40m \u001b[26;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mmodule.exports = App; \u001b[28;67H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[29;67H~ \u001b[30;67H~ \u001b[31;67H~ \u001b[32;67H~ \u001b[33;67H~ \u001b[34;67H~ \u001b[35;67H~ \u001b[36;67H~ \u001b[37;67H~ \u001b[38;67H~ \u001b[39;67H~ \u001b[40;67H~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;99H│\u001b[4;99H│\u001b[5;99H│\u001b[6;99H│\u001b[7;99H│\u001b[8;99H│\u001b[9;99H│\u001b[10;99H│\u001b[11;99H│\u001b[12;99H│\u001b[13;99H│\u001b[14;99H│\u001b[15;99H│\u001b[16;99H"]
+[0.000, "o", "│\u001b[17;99H│\u001b[18;99H│\u001b[19;99H│\u001b[20;99H│\u001b[21;99H│\u001b[22;99H│\u001b[23;99H│\u001b[24;99H│\u001b[25;99H│\u001b[26;99H│\u001b[27;99H│\u001b[28;99H│\u001b[29;99H│\u001b[30;99H│\u001b[31;99H│\u001b[32;99H│\u001b[33;99H│\u001b[34;99H│\u001b[35;99H│\u001b[36;99H│\u001b[37;99H│\u001b[38;99H│\u001b[39;99H│\u001b[40;99H│\u001b[41;67H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
+[0.000, "o", "\u001b[?25l\r\u001b[42;1H\u001b[?1049l\u001b[34h\u001b[?25h"]
+[0.001, "x", "0"]
diff --git a/docs/demo-basics-preview.gif b/docs/demo-basics-preview.gif
new file mode 100644
index 0000000..eb5973a
Binary files /dev/null and b/docs/demo-basics-preview.gif differ
diff --git a/docs/demo-v2.cast b/docs/demo-basics-v2.cast
similarity index 51%
rename from docs/demo-v2.cast
rename to docs/demo-basics-v2.cast
index 003716c..9ad7892 100644
--- a/docs/demo-v2.cast
+++ b/docs/demo-basics-v2.cast
@@ -1,6 +1,6 @@
-{"version":2,"width":130,"height":42,"timestamp":1771494277,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/bin/zsh"}}
-[0.01, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
-[0.016, "o", "\u001b]11;?\u0007"]
+{"version":2,"width":130,"height":42,"timestamp":1772019800,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/nix/store/ngqf98amj0hv0jhzhz540p03wxjj0chj-bash-interactive-5.3p9/bin/bash"}}
+[0.012, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
+[0.017, "o", "\u001b]11;?\u0007"]
[0.027, "o", "\u001bP+q4D73\u001b\\"]
[0.027, "o", "\u001b[?25l\u001b[?2031h\u001b[>4;2m\u001b[m\u000f\u001b[H \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
[0.027, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
@@ -13,385 +13,280 @@
[0.027, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.027, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.027, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n "]
-[0.027, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.5\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
+[0.027, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
[0.027, "o", " \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.027, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.5\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
+[0.027, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
[0.027, "o", " \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNvim is open source and freely distributable\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mhttps://neovim.io/#chat\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ "]
-[0.027, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
-[0.027, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
-[0.027, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.027, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
-[0.109, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
-[1.728, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
-[1.74, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
-[1.762, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
-[1.762, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
-[1.775, "o", "\u001b[?25l"]
-[1.785, "o", "\u001b[34h\u001b[?25h"]
-[1.835, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
-[1.847, "o", "\u001b[?25l"]
-[1.851, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138"]
-[1.851, "o", ";169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js "]
-[1.851, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
-[1.851, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;1"]
-[1.851, "o", "13;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} "]
-[1.851, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m"]
-[1.851, "o", "\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/pr"]
-[1.851, "o", "ivate/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31"]
-[1.851, "o", ";31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[1.851, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[1.851, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and te"]
-[1.851, "o", "st runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
-[5.034, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[5.034, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[5.034, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[5.034, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[5.034, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[5.034, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[5.034, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[5.034, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;"]
-[5.034, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
-[5.034, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[10;32H╭\u001b[10;33H─\u001b[10;34H─\u001b[10;35H─\u001b[10;36H─\u001b[10;37H─\u001b[10;38H─\u001b[10;39H─\u001b[10;40H─\u001b[10;41H─\u001b[10;42H─\u001b[10;43H─\u001b[10;44H─\u001b[10;45H─\u001b[10;46H─\u001b[10;47H─\u001b[10;48H─\u001b[10;49H─\u001b[10;50H─\u001b[10;51H─\u001b[10;52H─\u001b[10;53H─\u001b[10;54H─\u001b[10;55H─\u001b[10;56H─\u001b[10;57H─\u001b[10;58H─\u001b[10;59H─\u001b[10;60H─\u001b[10;61H─\u001b[10;62H─\u001b["]
-[5.034, "o", "10;63H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[10;70H─\u001b[10;71H─\u001b[10;72H─\u001b[10;73H─\u001b[10;74H─\u001b[10;75H─\u001b[10;76H─\u001b[10;77H─\u001b[10;78H─\u001b[10;79H─\u001b[10;80H─\u001b[10;81H─\u001b[10;82H─\u001b[10;83H─\u001b[10;84H─\u001b[10;85H─\u001b[10;86H─\u001b[10;87H─\u001b[10;88H─\u001b[10;89H─\u001b[10;90H─\u001b[10;91H─\u001b[10;92H─\u001b[10;93H─\u001b[10;94H─\u001b[10;95H─\u001b[10;96H─\u001b[10;97H─\u001b[10;98H─\u001b[10;99H─\u001b[10;100H╮\u001b[11;32H│\u001b[11;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mTransient commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[12;32H│\u001b[12;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log \u001b[m\u000f\u001b[38;2"]
-[5.034, "o", ";84;84;109m\u001b[48;2;22;22;29m│\u001b[13;32H│\u001b[13;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Push \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Pull \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Fetch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;32H│\u001b[14;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Rebase \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Merge \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;32H│\u001b[15;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mz\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stash \u001b[m\u000f\u001b[3m\u001b[38;2"]
-[5.034, "o", ";149;127;184m\u001b[48;2;22;22;29mA\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Cherry-pick \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m_\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Revert \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;32H│\u001b[16;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mX\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reset \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m'\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Submodule \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mZ\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;32H│\u001b[17;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mM\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Remotes \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mW\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Patch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Apply patches \u001b[m"]
-[5.034, "o", "\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;32H│\u001b[18;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29myr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m References \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;32H│\u001b[19;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;32H│\u001b[20;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mApplying changes\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;32H│\u001b[21;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Intent to add "]
-[5.035, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;32H│\u001b[22;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Discard \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mU\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;32H│\u001b[23;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;32H│\u001b[24;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mNavigation\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;32H│\u001b[25;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;2"]
-[5.035, "o", "2;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next section \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;32H│\u001b[26;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;32H│\u001b[27;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m1\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Headers only \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m2\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show items \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diffs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;2"]
-[5.035, "o", "2;22;29m│\u001b[28;32H│\u001b[28;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Visit file \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Edit file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;32H│\u001b[29;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;32H│\u001b[30;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEssential commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;32H│\u001b[31;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Refresh \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m$\u001b[m\u000f\u001b[38;2;200;192;147"]
-[5.035, "o", "m\u001b[48;2;22;22;29m Git command history \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;32H│\u001b[32;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mys\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Yank section value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mq\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close buffer \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;32H│\u001b[33;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m?\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m This help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;32H╰\u001b[34;33H─\u001b[34;34H─\u001b[34;35H─\u001b[34;36H─\u001b[34;37H─\u001b[34;38H─\u001b[34;39H─\u001b[34;40H─\u001b[34;41H─\u001b[34;42H─\u001b[34;43H─\u001b[34;44H─\u001b[34;45H─\u001b[34;46H─\u001b[34;47H─\u001b[34;48H─\u001b[34;49H─\u001b[34;50H─\u001b[34;51H─\u001b[34;52H─\u001b[34;53H─\u001b[34;54H─\u001b[34;55H─\u001b[34;56H─\u001b[34;57H─\u001b[34;58H─\u001b[34;59H─\u001b[34;60H─\u001b[34;61H─\u001b[34;62H─\u001b[34;63H"]
-[5.035, "o", "─\u001b[34;64H─\u001b[34;65H─\u001b[34;66H─\u001b[34;67H─\u001b[34;68H─\u001b[34;69H─\u001b[34;70H─\u001b[34;71H─\u001b[34;72H─\u001b[34;73H─\u001b[34;74H─\u001b[34;75H─\u001b[34;76H─\u001b[34;77H─\u001b[34;78H─\u001b[34;79H─\u001b[34;80H─\u001b[34;81H─\u001b[34;82H─\u001b[34;83H─\u001b[34;84H─\u001b[34;85H─\u001b[34;86H─\u001b[34;87H─\u001b[34;88H─\u001b[34;89H─\u001b[34;90H─\u001b[34;91H─\u001b[34;92H─\u001b[34;93H─\u001b[34;94H─\u001b[34;95H─\u001b[34;96H─\u001b[34;97H─\u001b[34;98H─\u001b[34;99H─\u001b[34;100H╯\u001b[11;33H\u001b[34h\u001b[?25h"]
-[8.133, "o", "\u001b[?25l\u001b[10;32H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;32H \u001b[12;32H \u001b[13;32H \u001b[14;32H \u001b[15;32H \u001b[16;32H \u001b[17;32H \u001b[18;32H \u001b[19;32HENCE.md} \u001b[20;32H \u001b[21;32H \u001b[22;32H "]
-[8.133, "o", " \u001b[23;32H \u001b[24;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;32H \u001b[28;32H \u001b[29;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mre and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mddleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[8.133, "o", " \u001b[31;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;32H \u001b[33;32H \u001b[34;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mre and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[8.133, "o", " \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt "]
-[8.133, "o", " \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48"]
-[8.133, "o", ";2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40"]
-[8.133, "o", "mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js "]
-[8.133, "o", " \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31"]
-[8.133, "o", ";31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b["]
-[8.133, "o", "48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and "]
-[8.133, "o", "formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[8.133, "o", " \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;1"]
-[8.133, "o", "47m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[6;3H\u001b[34h\u001b[?25h"]
-[8.934, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[9.085, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[9.236, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[9.386, "o", "\u001b[?25l\n\n\n\u001b[34h\u001b[?25h"]
-[9.537, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[9.688, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[10.3, "o", "\u001b[?25l"]
-[10.364, "o", "\r\u001b[14;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv\r\nv \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;73;68;60m@@ -3,17 +3,27 @@ class Button {\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\u001b[17;8H\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40"]
-[10.364, "o", "mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;3"]
-[10.364, "o", "1;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;6H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrender\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m{\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;248;113;113m\u001b[48;2;74;42;42m-\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;74;42;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;74;42;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mconst\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[];\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[25;3H\u001b[m\u000f"]
-[10.364, "o", "\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m||\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mpush\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'disabled'\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m);\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
-[10.364, "o", " \u001b[26;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mpush\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'data-loading'\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m);\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
-[10.364, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mconst\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'Loading...'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
-[10.365, "o", " \u001b[29;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[30;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;4"]
-[10.365, "o", "0m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H \u001b[32;6H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mclick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m{\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;248;113;113m\u001b[48;2;74;42;42m-\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;74;42;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;74;42;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m&&\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;74;42;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;74;42;42monClick\u001b[m"]
-[10.365, "o", "\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[34;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m&&\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m&&\u001b[m\u000f\u001b[38;2;220;215;"]
-[10.365, "o", "186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m();\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
-[10.365, "o", " \u001b[39;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42msetLoading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[40;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74"]
-[10.365, "o", ";42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[14;3H\u001b[34h\u001b[?25h"]
-[11.992, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[12.143, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[12.294, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[12.445, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[12.596, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[12.747, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[12.898, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[13.048, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[14.252, "o", "\u001b[?25l"]
-[14.26, "o", "\r\u001b[8A\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\r\n> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js\u001b[17;8H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b["]
-[14.26, "o", "20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js\u001b[22;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;"]
-[14.26, "o", "2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
-[14.26, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[32;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;"]
-[14.26, "o", "105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
-[14.26, "o", ";2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;3H\u001b[34h\u001b[?25h"]
-[15.854, "o", "\u001b[?25l\n\n\u001b[34h\u001b[?25h"]
-[17.307, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[17.458, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[17.609, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[17.76, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[19.164, "o", "\u001b[?25l"]
-[19.171, "o", "\r\u001b[28;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[29;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatter\u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2"]
-[19.171, "o", ";31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[3"]
-[19.171, "o", "8;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[28;3H\u001b[34h\u001b[?25h"]
-[20.269, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[20.269, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[20.269, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[20.269, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[20.269, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[20.269, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[20.269, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[20.269, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[20.269, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[20.269, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;37H╭\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─"]
-[20.269, "o", "\u001b[13;72H─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H─\u001b[13;88H─\u001b[13;89H─\u001b[13;90H─\u001b[13;91H─\u001b[13;92H─\u001b[13;93H─\u001b[13;94H─\u001b[13;95H╮\u001b[14;37H│\u001b[14;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;37H│\u001b[15;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all modified and deleted files (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--all\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;37H│\u001b[16;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-e\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Allow empty commit (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--allow-empty\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;2"]
-[20.269, "o", "2;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;37H│\u001b[17;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-v\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diff of changes to be committed (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--verbose\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;37H│\u001b[18;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Disable hooks (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--no-verify\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;37H│\u001b[19;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=A\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Override the author \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--author=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;37H│\u001b"]
-[20.269, "o", "[20;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=S\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Add Signed-off-by trailer \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--signoff)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;37H│\u001b[21;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;37H│\u001b[22;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;37H│\u001b[23;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;37H│\u001b[24;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEdit HEAD\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
-[20.269, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;37H│\u001b[25;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Extend \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;37H│\u001b[26;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reword \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;37H│\u001b[27;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ma\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Amend \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;37H│\u001b[28;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mInstant\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;37H│\u001b[29;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22"]
-[20.269, "o", ";22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Instant fixup \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;37H│\u001b[30;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Instant squash \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;37H╰\u001b[31;38H─\u001b[31;39H─\u001b[31;40H─\u001b[31;41H─\u001b[31;42H─\u001b[31;43H─\u001b[31;44H─\u001b[31;45H─\u001b[31;46H─\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;77H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H─\u001b[31;88H─\u001b[31;89H─\u001b[31;90H─\u001b[31;91"]
-[20.269, "o", "H─\u001b[31;92H─\u001b[31;93H─\u001b[31;94H─\u001b[31;95H╯\u001b[14;38H\u001b[34h\u001b[?25h"]
-[22.869, "o", "\u001b[?25l\u001b[13;37H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H \u001b[15;37H \u001b[16;37H \u001b[17;37H \u001b[18;37H \u001b[19;37Hmd} \u001b[20;37H \u001b[21;37H \u001b[22;37H \u001b[23;37H \u001b[24;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;1"]
-[22.869, "o", "86m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H \u001b[28;37H \u001b[29;37H \u001b[30;37H \u001b[31;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40md formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth "]
-[22.869, "o", "middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin "]
-[22.869, "o", " \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
-[22.869, "o", " \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H "]
-[22.869, "o", " \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;5"]
-[22.869, "o", "1;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b"]
-[22.869, "o", "[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[22.869, "o", " \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;3"]
-[22.869, "o", "1;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[22.869, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[22.869, "o", " \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
-[23.972, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[23.973, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[23.973, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[23.973, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[23.973, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[23.973, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[23.973, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[23.973, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[23.973, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[23.973, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[18;46H╭\u001b[18;47H─\u001b[18;48H─\u001b[18;49H─\u001b[18;50H─\u001b[18;51H─\u001b[18;52H─\u001b[18;53H─\u001b[18;54H─\u001b[18;55H─\u001b[18;56H─\u001b[18;57H─\u001b[18;58H─\u001b[18;59H─\u001b[18;60H─\u001b[18;61H─\u001b[18;62H─\u001b[18;63H─\u001b[18;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[18;71H─\u001b[18;72H─\u001b[18;73H─\u001b[18;74H─\u001b[18;75H─\u001b[18;76H─\u001b[18;77H─\u001b[18;78H─\u001b["]
-[23.973, "o", "18;79H─\u001b[18;80H─\u001b[18;81H─\u001b[18;82H─\u001b[18;83H─\u001b[18;84H─\u001b[18;85H─\u001b[18;86H─\u001b[18;87H╮\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiffing\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff (dwim) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff staged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff unstaged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b"]
-[23.973, "o", "[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Build range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H╰\u001b[26;47H─\u001b[26;48H─\u001b[26;49H─\u001b[26;50H─\u001b[26;51H─\u001b[26;52H─\u001b[26;53H─\u001b[26;54H─\u001b[26;55H─\u001b[26;56H─\u001b[26;57H─\u001b[26;58H─\u001b[26;59H─\u001b[26;60H─\u001b[26;61H─\u001b[26;62H─\u001b[26;63H─\u001b[26;64H─\u001b[26;65H─\u001b[26;66H─\u001b[26;67H─\u001b[26;68H─\u001b[26;69H─\u001b[26;70H─\u001b[26;71H─\u001b[26;72H─\u001b[26;73H─\u001b[26;74H─\u001b[26;75H─\u001b[26;76H─\u001b[26;77H─\u001b[26;78H─\u001b[26;79H─\u001b[26;80H─\u001b[26;81H─\u001b[26;82H─\u001b[26;83H─\u001b[26;84H─\u001b[26;85H─\u001b[26;86H─"]
-[23.973, "o", "\u001b[26;87H╯\u001b[19;47H\u001b[34h\u001b[?25h"]
-[26.084, "o", "\u001b[?25l\u001b[18;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;47H\u001b[34h\u001b[?25h"]
-[26.102, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m d///p/0/DiffviewFilePanel \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;149;127;184m\u001b[48;2;54;54;70m…\u001b[2;4H/private/tmp/gitlad-demo-repo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mHelp: \u001b[0;1m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mg?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \r\n \u001b[0;1m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mChanges \u001b[0;1m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40m(0)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r"]
-[26.102, "o", "\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[26.102, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt "]
-[29.376, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;1"]
-[29.376, "o", "86m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m"]
-[29.376, "o", "\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
-[29.376, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[29.376, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
-[29.376, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48"]
-[29.376, "o", ";2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b["]
-[29.376, "o", "38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b["]
-[29.376, "o", "m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;"]
-[29.376, "o", "31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[28;3H\u001b[34h\u001b[?25h"]
-[30.979, "o", "\u001b[?25l"]
-[31.021, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[31.021, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
-[31.021, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
-[31.021, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
-[31.021, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
-[31.021, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
-[31.021, "o", ";2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[31.021, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[31.021, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;"]
-[31.021, "o", "2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;30H╭\u001b[13;31H─\u001b[13;32H─\u001b[13;33H─\u001b[13;34H─\u001b[13;35H─\u001b[13;36H─\u001b[13;37H─\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48"]
-[31.021, "o", ";2;22;22;29m Branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─\u001b[13;72H─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H─\u001b[13;88H─\u001b[13;89H─\u001b[13;90H─\u001b[13;91H─\u001b[13;92H─\u001b[13;93H─\u001b[13;94H─\u001b[13;95H─\u001b[13;96H─\u001b[13;97H─\u001b[13;98H─\u001b[13;99H─\u001b[13;100H─\u001b[13;101H─\u001b[13;102H╮\u001b[14;30H│\u001b[14;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mConfigure main\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;30H│\u001b[15;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.description\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29munset\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b["]
-[31.021, "o", "48;2;22;22;29m│\u001b[16;30H│\u001b[16;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.merge\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mrefs/heads/main\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;30H│\u001b[17;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch.main.remote origin \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;30H│\u001b[18;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.rebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[true|false|\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mdefault:false\u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22"]
-[31.021, "o", ";29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;30H│\u001b[19;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.pushRemote\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[origin]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;30H│\u001b[20;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;30H│\u001b[21;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mConfigure repository defaults\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;30H│\u001b[22;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
-[31.021, "o", "[48;2;22;22;29mpull.rebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[true|false|\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mdefault:false\u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;30H│\u001b[23;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mP\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mremote.pushDefault\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[origin]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;30H│\u001b[24;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;30H│\u001b[25;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
-[31.021, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;30H│\u001b[26;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-f\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Force delete (even if not merged) (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--force\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;30H│\u001b[27;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;30H│\u001b[28;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCheckout \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;30H│\u001b[29;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b"]
-[31.021, "o", "[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch/revision \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mn\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m rename \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;30H│\u001b[30;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m local branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new spin-off \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m delete \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;30H╰\u001b[31;31H─\u001b[31;32H─\u001b[31;33H─\u001b[31;34H─\u001b[31;35H─\u001b[31;36H─\u001b[31;37H─\u001b[31;38H─\u001b[31;39H─\u001b[31;40H─\u001b[31;41H─\u001b[31;42H─\u001b[31;43H─\u001b[31;44H─\u001b[31;45H─\u001b[31"]
-[31.021, "o", ";46H─\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;77H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H─\u001b[31;88H─\u001b[31;89H─\u001b[31;90H─\u001b[31;91H─\u001b[31;92H─\u001b[31;93H─\u001b[31;94H─\u001b[31;95H─\u001b[31;96H─\u001b[31;97H─\u001b[31;98H─\u001b[31;99H─\u001b[31;100H─\u001b[31;101H─\u001b[31;102H╯\u001b[14;31H\u001b[34h\u001b[?25h"]
-[33.078, "o", "\u001b[?25l\u001b[13;30H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;30Hs \u001b[15;30H \u001b[16;30H \u001b[17;30H \u001b[18;30H \u001b[19;30HERENCE.md} \u001b[20;30H \u001b[21;30H \u001b[22;30H \u001b[23;30H \u001b[24;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186"]
-[33.078, "o", "m\u001b[48;2;31;31;40m \u001b[25;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;30H \u001b[28;30H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;30H \u001b[30;30H \u001b[31;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m "]
-[33.078, "o", " \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[33.078, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2"]
-[33.078, "o", ";31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js "]
-[33.078, "o", " \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
-[33.079, "o", ";2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/git"]
-[33.079, "o", "lad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[33.079, "o", " \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;1"]
-[33.079, "o", "02m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;3"]
-[33.079, "o", "1;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b"]
-[33.079, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
-[34.182, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[34.182, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[34.182, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[34.182, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[34.182, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[34.182, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[34.182, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[34.182, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[34.182, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[34.182, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[20;46H╭\u001b[20;47H─\u001b[20;48H─\u001b[20;49H─\u001b[20;50H─\u001b[20;51H─\u001b[20;52H─\u001b[20;53H─\u001b[20;54H─\u001b[20;55H─\u001b[20;56H─\u001b[20;57H─\u001b[20;58H─\u001b[20;59H─\u001b[20;60H─\u001b[20;61H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m References \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[20;74H─\u001b[20;75H─\u001b[20;76H─\u001b[20;77H─\u001b[20;78H─\u001b[20;79H─\u001b[20;80H─\u001b[20;81H─\u001b[20;82H─\u001b[20;83H─\u001b[20;84"]
-[34.182, "o", "H─\u001b[20;85H─\u001b[20;86H─\u001b[20;87H╮\u001b[21;46H│\u001b[21;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mShow refs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29my\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show refs at HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show refs at current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show refs at other ref... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H╰\u001b[25;47H─\u001b[25;48H─\u001b[25;49H─\u001b[25;50H─\u001b[25;51H─\u001b[25;52H─\u001b[25;53H─\u001b[25;54H─\u001b[25;55H─\u001b[25;56H─\u001b[25;57H─\u001b[25;58H─\u001b[25"]
-[34.182, "o", ";59H─\u001b[25;60H─\u001b[25;61H─\u001b[25;62H─\u001b[25;63H─\u001b[25;64H─\u001b[25;65H─\u001b[25;66H─\u001b[25;67H─\u001b[25;68H─\u001b[25;69H─\u001b[25;70H─\u001b[25;71H─\u001b[25;72H─\u001b[25;73H─\u001b[25;74H─\u001b[25;75H─\u001b[25;76H─\u001b[25;77H─\u001b[25;78H─\u001b[25;79H─\u001b[25;80H─\u001b[25;81H─\u001b[25;82H─\u001b[25;83H─\u001b[25;84H─\u001b[25;85H─\u001b[25;86H─\u001b[25;87H╯\u001b[21;47H\u001b[34h\u001b[?25h"]
-[35.689, "o", "\u001b[?25l\u001b[20;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[17B \r\u001b[42;1H[gitlad] Loading refs...\r\u001b[42;1H \r\u001b[42;1H[gitlad] Refreshing refs...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[1;3H \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ "]
-[35.689, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[35.689, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[35.689, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n"]
-[35.689, "o", "~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[35.689, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://refs[/private/tmp/gitlad-demo-repo/] \u001b[1;3H\u001b[34h\u001b[?25h"]
-[35.698, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReferences (at main) \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mBranches (5) \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220"]
-[35.698, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mfeature/clean-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd math utility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mfeature/conflict-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component (will conflict)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[35.698, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;158;59m\u001b[48;2;31;31;40m@\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRemote \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m (\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m/tmp/gitlad-demo-repo-origin\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m) \u001b[0;1m\u000f\u001b[38;2;126;156"]
-[35.698, "o", ";216m\u001b[48;2;31;31;40m(3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mfeature/clean-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd math utility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mfeature/conflict-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component (will conflict)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220"]
-[35.698, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mPress ? for help \u001b[1;3H\u001b[34h\u001b[?25h"]
-[35.707, "o", "\u001b[?25l\r\n\n\n\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \r\n> \u001b[5A\u001b[34h\u001b[?25h"]
-[38.285, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \u001b[5;3H? notes.txt \u001b[6;3H? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b"]
-[38.285, "o", "[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \u001b[8;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js "]
-[38.285, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js\r\n\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;"]
-[38.285, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[38.285, "o", " \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
-[38.285, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;"]
-[38.285, "o", "186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;"]
-[38.285, "o", "2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b["]
-[38.285, "o", "m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;"]
-[38.285, "o", "31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[26;3H\u001b[34h\u001b[?25h"]
-[38.886, "o", "\u001b[?25l\u001b[1;40r\u001b[H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[2L\u001b[1;42r\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;3H\u001b[34h\u001b[?25h"]
-[39.187, "o", "\u001b[?25l\n\n\n\n\u001b[34h\u001b[?25h"]
-[39.387, "o", "\u001b[?25l\u001b[6B\u001b[34h\u001b[?25h"]
-[39.588, "o", "\u001b[?25l\u001b[7B\u001b[34h\u001b[?25h"]
-[39.789, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
-[40.842, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[41.043, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[42.449, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[42.449, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[42.449, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[42.449, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[42.449, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[42.449, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[42.449, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[42.449, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[42.449, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[42.449, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;46H╭\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H"]
-[42.449, "o", "─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H╮\u001b[14;46H│\u001b[14;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;46H│\u001b[15;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-f\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Force operations (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--force\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;46H│\u001b[16;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-d\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Detach HEAD (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--detach\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;46H│\u001b[17;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Lock after adding (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48"]
-[42.449, "o", ";2;22;22;29m--lock\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;46H│\u001b[18;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate new\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch and worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCommands experiment\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;10"]
-[42.449, "o", "9m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Move worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Delete worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mg\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Visit worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mLock\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Lock worktree "]
-[42.449, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H│\u001b[28;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unlock worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;46H│\u001b[29;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mMaintenance\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;46H│\u001b[30;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Prune stale \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;46H╰\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;7"]
-[42.449, "o", "7H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H╯\u001b[14;47H\u001b[34h\u001b[?25h"]
-[45.047, "o", "\u001b[?25l\u001b[13;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;46H \u001b[15;46H \u001b[16;46H \u001b[17;46H \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;46H \u001b[28;46H \u001b[29;46H "]
-[45.047, "o", " \u001b[30;46H \u001b[31;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mers\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38"]
-[45.047, "o", ";2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js "]
-[45.047, "o", " \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/co"]
-[45.047, "o", "mponents/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;"]
-[45.047, "o", "215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40"]
-[45.047, "o", "m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H "]
-[45.047, "o", " \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23"]
-[45.047, "o", "a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38"]
-[45.047, "o", ";2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m"]
-[45.047, "o", "\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[25;3H\u001b[34h\u001b[?25h"]
-[46.152, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[46.152, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[46.152, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[46.152, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[46.152, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[46.152, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[46.152, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[46.152, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[46.152, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[46.152, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[12;46H╭\u001b[12;47H─\u001b[12;48H─\u001b[12;49H─\u001b[12;50H─\u001b[12;51H─\u001b[12;52H─\u001b[12;53H─\u001b[12;54H─\u001b[12;55H─\u001b[12;56H─\u001b[12;57H─\u001b[12;58H─\u001b[12;59H─\u001b[12;60H─\u001b[12;61H─\u001b[12;62H─\u001b[12;63H─\u001b[12;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Log \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[12;70H─\u001b[12;71H─\u001b[12;72H─\u001b[12;73H─\u001b[12;74H─\u001b[12;75H─\u001b[12;76H─\u001b[12;77H─\u001b[1"]
-[46.152, "o", "2;78H─\u001b[12;79H─\u001b[12;80H─\u001b[12;81H─\u001b[12;82H─\u001b[12;83H─\u001b[12;84H─\u001b[12;85H─\u001b[12;86H─\u001b[12;87H╮\u001b[13;46H│\u001b[13;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;46H│\u001b[14;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m All branches (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----all\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;46H│\u001b[15;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Only merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;46H│\u001b[16;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-M\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
-[46.152, "o", "No merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----no-merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;46H│\u001b[17;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Limit \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--limit=256)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;46H│\u001b[18;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Author \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--author=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=s\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Since \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--since=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84"]
-[46.152, "o", ";84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=u\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Until \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--until=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mLog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log other branch "]
-[46.152, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mh\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mL\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log all branches \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mReflog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H│\u001b[28;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reflog current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;46H│\u001b[29;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mO\u001b[m\u000f\u001b[38;2;200;192;147"]
-[46.152, "o", "m\u001b[48;2;22;22;29m Reflog other ref \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;46H│\u001b[30;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mH\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reflog HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;46H│\u001b[31;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mToggle\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;46H│\u001b[32;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mt\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show tags in refs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;46H╰\u001b[33;47H─\u001b[33;48H─\u001b[33;49H─\u001b[33;50H─\u001b[33;51H─\u001b[33;52H─\u001b[33;53H─\u001b[33;54H─\u001b[33;55H─\u001b[33;56H─\u001b[33;57H─\u001b[33;58H─\u001b[33;59H─\u001b[33;60H─\u001b[33;61H─\u001b[33;62H─\u001b[33;63H─\u001b[33;64H─\u001b[33;65H─\u001b[33;66H─\u001b[33;67H─\u001b[33;68H─\u001b[33;69H─\u001b[33;70H─\u001b[33;71H─\u001b[33;72H─\u001b[33;73H─\u001b"]
-[46.152, "o", "[33;74H─\u001b[33;75H─\u001b[33;76H─\u001b[33;77H─\u001b[33;78H─\u001b[33;79H─\u001b[33;80H─\u001b[33;81H─\u001b[33;82H─\u001b[33;83H─\u001b[33;84H─\u001b[33;85H─\u001b[33;86H─\u001b[33;87H╯\u001b[13;47H\u001b[34h\u001b[?25h"]
-[47.652, "o", "\u001b[?25l\u001b[12;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;46H \u001b[14;46H \u001b[15;46H \u001b[16;46H \u001b[17;46H \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;46H \u001b[28;46H "]
-[47.652, "o", " \u001b[29;46H \u001b[30;46H \u001b[31;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mers\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;46H \u001b[33;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mies\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[9B \r\u001b[42;1H[gitlad] Fetching log...\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[47.652, "o", " \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt "]
-[47.652, "o", " \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;"]
-[47.652, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H "]
-[47.652, "o", " \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js "]
-[47.652, "o", " \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[47.652, "o", " \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m"]
-[47.652, "o", "\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;"]
-[47.652, "o", "152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b"]
-[47.652, "o", "[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b"]
-[47.652, "o", "[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[25;3H\u001b[34h\u001b[?25h"]
-[47.664, "o", "\u001b[?25l\u001b[23A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 49 seconds ago\u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 49 seconds ago\u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 49 seconds ago\r"]
-[47.664, "o", "\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 50 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 50 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
-[47.665, "o", "[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;3"]
-[47.665, "o", "1;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md26b8bf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 52 seconds ago\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ "]
-[47.665, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[47.665, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[47.665, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[47.665, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mCommits in main (-256) (11) \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mlog[/private/tmp/gitlad-demo-repo/] \u001b[2;3H\u001b[34h\u001b[?25h"]
-[52.056, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
-[52.067, "o", "\u001b[?25l\u001b[59C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m54\u001b[3;53H54\u001b[4;62H54\u001b[5;65H5\u001b[6;67H5\u001b[7;60H6\u001b[8;51H6\u001b[9;69H6\u001b[10;64H6\u001b[11;68H6\u001b[12;67H7\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m512\u001b[2;3H\u001b[34h\u001b[?25h"]
-[53.459, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
-[53.469, "o", "\u001b[?25l\u001b[60C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m5\u001b[3;54H5\u001b[4;63H5\u001b[5;65H6\u001b[6;67H6\u001b[7;60H7\u001b[8;51H7\u001b[9;69H7\u001b[10;64H7\u001b[11;68H7\u001b[12;67H8\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m256\u001b[2;3H\u001b[34h\u001b[?25h"]
-[54.512, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[54.713, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[54.914, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[56.118, "o", "\u001b[?25l"]
-[56.126, "o", "\u001b[3A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
-[56.126, "o", "31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago "]
-[56.126, "o", " \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;10"]
-[56.126, "o", "8m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md26b8bf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial pr"]
-[56.126, "o", "oject setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 58 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[56.126, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[56.126, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[56.126, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://log[/private/tmp/gitlad-demo-repo/] "]
-[56.126, "o", " \u001b[11;28H╭\u001b[11;29H─\u001b[11;30H─\u001b[11;31H─\u001b[11;32H─\u001b[11;33H─\u001b[11;34H─\u001b[11;35H─\u001b[11;36H─\u001b[11;37H─\u001b[11;38H─\u001b[11;39H─\u001b[11;40H─\u001b[11;41H─\u001b[11;42H─\u001b[11;43H─\u001b[11;44H─\u001b[11;45H─\u001b[11;46H─\u001b[11;47H─\u001b[11;48H─\u001b[11;49H─\u001b[11;50H─\u001b[11;51H─\u001b[11;52H─\u001b[11;53H─\u001b[11;54H─\u001b[11;55H─\u001b[11;56H─\u001b[11;57H─\u001b[11;58H─\u001b[11;59H─\u001b[11;60H─\u001b[11;61H─\u001b[11;62H─\u001b[11;63H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Rebase \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[11;72H─\u001b[11;73H─\u001b[11;74H─\u001b[11;75H─\u001b[11;76H─\u001b[11;77H─\u001b[11;78H─\u001b[11;79H─\u001b[11;80H─\u001b[11;81H─\u001b[11;82H─\u001b[11;83H─\u001b[11;84H─\u001b[11;85H─\u001b[11;86H─\u001b[11;87H─\u001b[11;88H─\u001b[11;89H─\u001b[11;90H─\u001b[11;91H─\u001b[11;92H─\u001b[11;93H─\u001b[11;94H─\u001b[11;95H─\u001b[11;96H─\u001b[11;97H─\u001b[11;98H─\u001b[11;99H─\u001b[11;100H─\u001b[11;101H─\u001b[11;102H─\u001b[11;103H─\u001b[11;104H─\u001b[11;105H╮\u001b[12;28H│\u001b[12;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
-[56.126, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[13;28H│\u001b[13;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-k\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Keep empty commits (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--keep-empty\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;28H│\u001b[14;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-r\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Rebase merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--rebase-merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;28H│\u001b[15;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-u\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Update branches (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--update-refs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) "]
-[56.126, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;28H│\u001b[16;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-d\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Use author date as committer date (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--committer-date-is-author-date\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;28H│\u001b[17;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-t\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Use current time as author date (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--ignore-date\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;28H│\u001b[18;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Autosquash (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--autosquash\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) "]
-[56.126, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;28H│\u001b[19;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-A\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Autostash (\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m--autostash\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;28H│\u001b[20;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-i\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Interactive (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--interactive\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;28H│\u001b[21;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-h\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Disable hooks (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--no-verify\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b["]
-[56.126, "o", "48;2;22;22;29m│\u001b[22;28H│\u001b[22;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;28H│\u001b[23;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mRebase main onto\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;28H│\u001b[24;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m origin/main \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;28H│\u001b[25;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m origin/main \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;28H│\u001b[26;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b["]
-[56.126, "o", "m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m elsewhere \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;28H│\u001b[27;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mRebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;28H│\u001b[28;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mi\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m interactively \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;28H│\u001b[29;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m a subset \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;28H│\u001b[30;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to"]
-[56.126, "o", " modify a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;28H│\u001b[31;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to reword a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;28H│\u001b[32;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to remove a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;28H│\u001b[33;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to autosquash \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;28H╰\u001b[34;29H─\u001b[34;30H─\u001b[34;31H─\u001b[34;32H─\u001b[34;33H─\u001b[34;34H─\u001b[34;35H─\u001b[34;36H─\u001b[34;37H─\u001b[34;38H─\u001b[34;39H─\u001b[34;40H─\u001b["]
-[56.126, "o", "34;41H─\u001b[34;42H─\u001b[34;43H─\u001b[34;44H─\u001b[34;45H─\u001b[34;46H─\u001b[34;47H─\u001b[34;48H─\u001b[34;49H─\u001b[34;50H─\u001b[34;51H─\u001b[34;52H─\u001b[34;53H─\u001b[34;54H─\u001b[34;55H─\u001b[34;56H─\u001b[34;57H─\u001b[34;58H─\u001b[34;59H─\u001b[34;60H─\u001b[34;61H─\u001b[34;62H─\u001b[34;63H─\u001b[34;64H─\u001b[34;65H─\u001b[34;66H─\u001b[34;67H─\u001b[34;68H─\u001b[34;69H─\u001b[34;70H─\u001b[34;71H─\u001b[34;72H─\u001b[34;73H─\u001b[34;74H─\u001b[34;75H─\u001b[34;76H─\u001b[34;77H─\u001b[34;78H─\u001b[34;79H─\u001b[34;80H─\u001b[34;81H─\u001b[34;82H─\u001b[34;83H─\u001b[34;84H─\u001b[34;85H─\u001b[34;86H─\u001b[34;87H─\u001b[34;88H─\u001b[34;89H─\u001b[34;90H─\u001b[34;91H─\u001b[34;92H─\u001b[34;93H─\u001b[34;94H─\u001b[34;95H─\u001b[34;96H─\u001b[34;97H─\u001b[34;98H─\u001b[34;99H─\u001b[34;100H─\u001b[34;101H─\u001b[34;102H─\u001b[34;103H─\u001b[34;104H─\u001b[34;105H╯\u001b[12;29H\u001b[34h\u001b[?25h"]
-[59.219, "o", "\u001b[?25l\u001b[11;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[12;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40metup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 58 seconds ago \u001b[13;28H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \u001b[14;28H \u001b[15;28H \u001b[16;28H \u001b[17;28H \u001b[18;28H "]
-[59.219, "o", " \u001b[19;28H \u001b[20;28H \u001b[21;28H \u001b[22;28H \u001b[23;28H \u001b[24;28H \u001b[25;28H \u001b[26;28H \u001b[27;28H \u001b[28;28H \u001b[29;28H \u001b[30;28H "]
-[59.219, "o", " \u001b[31;28H \u001b[32;28H \u001b[33;28H \u001b[34;28H \u001b[2;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;1"]
-[59.219, "o", "86m\u001b[48;2;31;31;40m 55 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102"]
-[59.219, "o", "m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;3"]
-[59.219, "o", "1;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd"]
-[59.219, "o", " configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md26b8bf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 58 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
-[59.219, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[59.219, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[59.219, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[59.219, "o", " \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://log[/private/tmp/gitlad-demo-repo/] \u001b[5;3H\u001b[34h\u001b[?25h"]
-[60.121, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.t"]
-[60.121, "o", "xt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \u001b[8;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
-[60.121, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js "]
-[60.121, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b"]
-[60.121, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;1"]
-[60.121, "o", "95;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[60.121, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up au"]
-[60.121, "o", "th middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m"]
-[60.121, "o", "origin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
-[60.121, "o", "31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
-[60.121, "o", "3;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[23;3H\u001b[34h\u001b[?25h"]
-[61.226, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[1;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[2;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[3;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[4;3H○\u001b[4;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
-[61.226, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[5;3H○\u001b[5;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[8;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186"]
-[61.226, "o", "m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[9;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[10;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[10;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[61.226, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b["]
-[61.226, "o", "m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[61.226, "o", " \u001b[20;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[61.226, "o", " \u001b[23;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:30]\u001b[m\u000f\u001b["]
-[61.226, "o", "38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:29]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -512\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(11ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:24]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;"]
-[61.226, "o", "186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main feature/conflict-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(9ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main experiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(8ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main feature/clean-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(8ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220"]
-[61.226, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main hotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(7ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(6ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit for-each-ref --format=%(refname:short)|||%(objectname:short)|||%(refname)|||%(subject)|||%(HEAD)|||%(up"]
-[61.226, "o", "stream:short) refs/heads refs/remotes refs/tags\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(9ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit remote -v\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(6ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(3ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215"]
-[61.226, "o", ";186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get pull.rebase\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(4ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(4ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(4ms)\u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mhistory \r\u001b[15A\u001b[34h\u001b[?25h"]
-[63.825, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H? assets/new-image.bin "]
-[63.825, "o", " \u001b[5;3H? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[63.825, "o", " \u001b[10;3H○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m"]
-[63.825, "o", "> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[15;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
-[63.825, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[20;3H "]
-[63.825, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[4"]
-[63.825, "o", "8;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;3"]
-[63.825, "o", "1;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42"]
-[63.825, "o", ";42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\r\n\u001b[m\u000f\u001b[38;2"]
-[63.825, "o", ";147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[23;3H\u001b[34h\u001b[?25h"]
-[67.341, "o", "\u001b[?25l\u001b[?2031l\u001b[2 q\u001b[?1002l\u001b[?1006l\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[?1l\u001b>\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
-[67.341, "o", "\u001b[?25l\r\u001b[19B\u001b[?1049l\u001b[34h\u001b[?25h"]
-[67.342, "x", "0"]
+[0.028, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.028, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
+[0.028, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.028, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
+[0.111, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
+[1.73, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
+[1.744, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
+[1.945, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[1.945, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
+[1.966, "o", "\u001b[?25l"]
+[1.996, "o", "\u001b[34h\u001b[?25h"]
+[2.008, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
+[2.088, "o", "\u001b[?25l⠸\b\u001b[34h\u001b[?25h"]
+[2.099, "o", "\u001b[?25l"]
+[2.111, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138"]
+[2.111, "o", ";169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js "]
+[2.111, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
+[2.111, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;1"]
+[2.111, "o", "13;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} "]
+[2.111, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m"]
+[2.111, "o", "\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/pr"]
+[2.111, "o", "ivate/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31"]
+[2.111, "o", ";31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[2.111, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[2.111, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and te"]
+[2.111, "o", "st runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
+[5.04, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[5.04, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[5.04, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[5.04, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[5.04, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[5.04, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[5.04, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[5.04, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;"]
+[5.041, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[5.041, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[6;28H╭\u001b[6;29H─\u001b[6;30H─\u001b[6;31H─\u001b[6;32H─\u001b[6;33H─\u001b[6;34H─\u001b[6;35H─\u001b[6;36H─\u001b[6;37H─\u001b[6;38H─\u001b[6;39H─\u001b[6;40H─\u001b[6;41H─\u001b[6;42H─\u001b[6;43H─\u001b[6;44H─\u001b[6;45H─\u001b[6;46H─\u001b[6;47H─\u001b[6;48H─\u001b[6;49H─\u001b[6;50H─\u001b[6;51H─\u001b[6;52H─\u001b[6;53H─\u001b[6;54H─\u001b[6;55H─\u001b[6;56H─\u001b[6;57H─\u001b[6;58H─\u001b[6;59H─\u001b[6;60H─\u001b[6;61H─\u001b[6"]
+[5.041, "o", ";62H─\u001b[6;63H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[6;70H─\u001b[6;71H─\u001b[6;72H─\u001b[6;73H─\u001b[6;74H─\u001b[6;75H─\u001b[6;76H─\u001b[6;77H─\u001b[6;78H─\u001b[6;79H─\u001b[6;80H─\u001b[6;81H─\u001b[6;82H─\u001b[6;83H─\u001b[6;84H─\u001b[6;85H─\u001b[6;86H─\u001b[6;87H─\u001b[6;88H─\u001b[6;89H─\u001b[6;90H─\u001b[6;91H─\u001b[6;92H─\u001b[6;93H─\u001b[6;94H─\u001b[6;95H─\u001b[6;96H─\u001b[6;97H─\u001b[6;98H─\u001b[6;99H─\u001b[6;100H─\u001b[6;101H─\u001b[6;102H─\u001b[6;103H─\u001b[6;104H╮\u001b[7;28H│\u001b[7;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mTransient commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[8;28H│\u001b[8;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log "]
+[5.041, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[9;28H│\u001b[9;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Push \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Pull \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Fetch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[10;28H│\u001b[10;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Rebase \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Merge \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[11;28H│\u001b[11;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mz\u001b[m\u000f\u001b[38;2;200;192;147"]
+[5.041, "o", "m\u001b[48;2;22;22;29m Stash \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mA\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Cherry-pick \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m_\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Revert \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[12;28H│\u001b[12;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mX\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reset \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m'\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Submodule \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mZ\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[13;28H│\u001b[13;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mM\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Remotes \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mW\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Patch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2"]
+[5.041, "o", ";200;192;147m\u001b[48;2;22;22;29m Apply patches \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;28H│\u001b[14;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29myr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m References \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mB\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Blame \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mN\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Forge \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;28H│\u001b[15;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;28H│\u001b[16;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mApplying changes\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;28H│\u001b[17;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b["]
+[5.041, "o", "38;2;200;192;147m\u001b[48;2;22;22;29m Stage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Intent to add \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;28H│\u001b[18;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Discard \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mU\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;28H│\u001b[19;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;28H│\u001b[20;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mNavigation\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
+[5.041, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;28H│\u001b[21;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next section \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;28H│\u001b[22;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;28H│\u001b[23;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;"]
+[5.041, "o", "22;22;29m1\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Headers only \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m2\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show items \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diffs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;28H│\u001b[24;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Visit file \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Edit file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;28H│\u001b[25;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;28H│\u001b[26;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiff view\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;"]
+[5.041, "o", "29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;28H│\u001b[27;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mq\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close diff view \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next file \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;28H│\u001b[28;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m]c\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next hunk \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m[c\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous hunk \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Select file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;28H│\u001b[29;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149"]
+[5.041, "o", ";127;184m\u001b[48;2;22;22;29mgr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Refresh \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m:w\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Save edits \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next commit (PR) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;28H│\u001b[30;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Prev commit (PR) \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m]t\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next review thread \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m[t\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Prev review thread \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;28H│\u001b[31;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle thread \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Add review com"]
+[5.041, "o", "ment \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reply to thread \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;28H│\u001b[32;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Submit review \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mP\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle pending mode \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage file (merge) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;28H│\u001b[33;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;28H│\u001b[34;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEssential commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[35;28H│\u001b[35;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b["]
+[5.041, "o", "m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Refresh \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m$\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Git command history \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[36;28H│\u001b[36;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mys\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Yank section value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mq\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close buffer \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[37;28H│\u001b[37;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m?\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m This help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[38;28H╰\u001b[38;29H─\u001b[38;30H─\u001b[38;31H─\u001b[38;32H─\u001b[38;33H─\u001b[38;34H─\u001b[38;35H─\u001b[38;36H─\u001b[38;37H─\u001b[38;38H─\u001b[38;39H─\u001b[38;40H─\u001b[38;41H─\u001b["]
+[5.041, "o", "38;42H─\u001b[38;43H─\u001b[38;44H─\u001b[38;45H─\u001b[38;46H─\u001b[38;47H─\u001b[38;48H─\u001b[38;49H─\u001b[38;50H─\u001b[38;51H─\u001b[38;52H─\u001b[38;53H─\u001b[38;54H─\u001b[38;55H─\u001b[38;56H─\u001b[38;57H─\u001b[38;58H─\u001b[38;59H─\u001b[38;60H─\u001b[38;61H─\u001b[38;62H─\u001b[38;63H─\u001b[38;64H─\u001b[38;65H─\u001b[38;66H─\u001b[38;67H─\u001b[38;68H─\u001b[38;69H─\u001b[38;70H─\u001b[38;71H─\u001b[38;72H─\u001b[38;73H─\u001b[38;74H─\u001b[38;75H─\u001b[38;76H─\u001b[38;77H─\u001b[38;78H─\u001b[38;79H─\u001b[38;80H─\u001b[38;81H─\u001b[38;82H─\u001b[38;83H─\u001b[38;84H─\u001b[38;85H─\u001b[38;86H─\u001b[38;87H─\u001b[38;88H─\u001b[38;89H─\u001b[38;90H─\u001b[38;91H─\u001b[38;92H─\u001b[38;93H─\u001b[38;94H─\u001b[38;95H─\u001b[38;96H─\u001b[38;97H─\u001b[38;98H─\u001b[38;99H─\u001b[38;100H─\u001b[38;101H─\u001b[38;102H─\u001b[38;103H─\u001b[38;104H╯\u001b[7;29H\u001b[34h\u001b[?25h"]
+[8.136, "o", "\u001b[?25l\u001b[6;28H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;28H \u001b[8;28Hwn.js \u001b[9;28H \u001b[10;28H \u001b[11;28H \u001b[12;28H \u001b[13;28H \u001b[14;28H.js \u001b[15;28H \u001b[16;28H \u001b[17;28H "]
+[8.137, "o", " \u001b[18;28H \u001b[19;28HEFERENCE.md} \u001b[20;28Hs \u001b[21;28Hs \u001b[22;28H \u001b[23;28H \u001b[24;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mgitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mgitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mgitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[8.137, "o", " \u001b[27;28H \u001b[28;28H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mn middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;28H \u001b[33;28H \u001b[34;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mleware and formatters\u001b[m\u000f\u001b["]
+[8.137, "o", "38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mn middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40me App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m"]
+[8.137, "o", "\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[8.137, "o", " \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;"]
+[8.137, "o", "2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js "]
+[8.137, "o", " \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js "]
+[8.137, "o", " \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;21"]
+[8.137, "o", "5;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middlew"]
+[8.137, "o", "are and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[8.137, "o", " \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b"]
+[8.137, "o", "[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m"]
+[8.137, "o", "\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[6;3H\u001b[34h\u001b[?25h"]
+[8.936, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[9.086, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[9.237, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[9.388, "o", "\u001b[?25l\n\n\n\u001b[34h\u001b[?25h"]
+[9.539, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[9.69, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[10.33, "o", "\u001b[?25l"]
+[10.398, "o", "\r\u001b[14;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv\r\nv \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;73;68;60m@@ -3,17 +3,27 @@ class Button {\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\u001b[17;8H\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40"]
+[10.398, "o", "mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;3"]
+[10.398, "o", "1;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;6H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrender\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m{\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;248;113;113m\u001b[48;2;74;42;42m-\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;74;42;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;74;42;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mconst\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[];\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[25;3H\u001b[m\u000f"]
+[10.398, "o", "\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m||\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mpush\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'disabled'\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m);\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[10.398, "o", " \u001b[26;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mpush\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'data-loading'\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m);\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[10.398, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mconst\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'Loading...'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[10.398, "o", " \u001b[29;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[30;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;4"]
+[10.398, "o", "0m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H \u001b[32;6H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mclick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m{\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;248;113;113m\u001b[48;2;74;42;42m-\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;74;42;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;74;42;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m&&\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;74;42;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;74;42;42monClick\u001b[m"]
+[10.398, "o", "\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[34;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m&&\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m&&\u001b[m\u000f\u001b[38;2;220;215;"]
+[10.398, "o", "186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m();\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[10.398, "o", " \u001b[39;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42msetLoading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[40;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74"]
+[10.398, "o", ";42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[14;3H\u001b[34h\u001b[?25h"]
+[11.993, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[12.145, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[12.296, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[12.447, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[12.599, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[12.75, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[12.901, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[13.053, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[14.259, "o", "\u001b[?25l"]
+[14.279, "o", "\r\u001b[8A\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\r\n> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js\u001b[17;8H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b["]
+[14.279, "o", "20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js\u001b[22;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;"]
+[14.279, "o", "2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[14.279, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[32;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;"]
+[14.279, "o", "105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[14.279, "o", ";2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;3H\u001b[34h\u001b[?25h"]
+[15.859, "o", "\u001b[?25l\n\n\u001b[34h\u001b[?25h"]
+[17.312, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[17.462, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[17.612, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[17.763, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[19.171, "o", "\u001b[?25l"]
+[19.197, "o", "\r\u001b[28;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[29;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatter\u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2"]
+[19.197, "o", ";31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[3"]
+[19.197, "o", "8;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[28;3H\u001b[34h\u001b[?25h"]
+[20.275, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[20.275, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[20.275, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[20.276, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[20.276, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[20.276, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[20.276, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[20.276, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[20.276, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
+[20.276, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;37H╭\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─"]
+[20.276, "o", "\u001b[13;72H─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H─\u001b[13;88H─\u001b[13;89H─\u001b[13;90H─\u001b[13;91H─\u001b[13;92H─\u001b[13;93H─\u001b[13;94H─\u001b[13;95H╮\u001b[14;37H│\u001b[14;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;37H│\u001b[15;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all modified and deleted files (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--all\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;37H│\u001b[16;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-e\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Allow empty commit (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--allow-empty\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;2"]
+[20.276, "o", "2;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;37H│\u001b[17;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-v\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diff of changes to be committed (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--verbose\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;37H│\u001b[18;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Disable hooks (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--no-verify\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;37H│\u001b[19;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=A\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Override the author \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--author=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;37H│\u001b"]
+[20.276, "o", "[20;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=S\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Add Signed-off-by trailer \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--signoff)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;37H│\u001b[21;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;37H│\u001b[22;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;37H│\u001b[23;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;37H│\u001b[24;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEdit HEAD\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
+[20.276, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;37H│\u001b[25;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Extend \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;37H│\u001b[26;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reword \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;37H│\u001b[27;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ma\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Amend \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;37H│\u001b[28;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mInstant\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;37H│\u001b[29;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22"]
+[20.276, "o", ";22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Instant fixup \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;37H│\u001b[30;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Instant squash \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;37H╰\u001b[31;38H─\u001b[31;39H─\u001b[31;40H─\u001b[31;41H─\u001b[31;42H─\u001b[31;43H─\u001b[31;44H─\u001b[31;45H─\u001b[31;46H─\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;77H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H─\u001b[31;88H─\u001b[31;89H─\u001b[31;90H─\u001b[31;91"]
+[20.276, "o", "H─\u001b[31;92H─\u001b[31;93H─\u001b[31;94H─\u001b[31;95H╯\u001b[14;38H\u001b[34h\u001b[?25h"]
+[22.873, "o", "\u001b[?25l\u001b[13;37H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H \u001b[15;37H \u001b[16;37H \u001b[17;37H \u001b[18;37H \u001b[19;37Hmd} \u001b[20;37H \u001b[21;37H \u001b[22;37H \u001b[23;37H \u001b[24;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;1"]
+[22.873, "o", "86m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H \u001b[28;37H \u001b[29;37H \u001b[30;37H \u001b[31;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40md formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth "]
+[22.873, "o", "middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin "]
+[22.873, "o", " \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
+[22.873, "o", " \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H "]
+[22.873, "o", " \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;5"]
+[22.873, "o", "1;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b"]
+[22.873, "o", "[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[22.873, "o", " \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;3"]
+[22.873, "o", "1;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[22.873, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[22.873, "o", " \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
+[23.979, "o", "\u001b[?25l"]
+[24.102, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[24.102, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
+[24.102, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
+[24.102, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
+[24.102, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[24.102, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[24.102, "o", ";2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[24.102, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[24.102, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;"]
+[24.102, "o", "2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;30H╭\u001b[13;31H─\u001b[13;32H─\u001b[13;33H─\u001b[13;34H─\u001b[13;35H─\u001b[13;36H─\u001b[13;37H─\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48"]
+[24.102, "o", ";2;22;22;29m Branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─\u001b[13;72H─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H─\u001b[13;88H─\u001b[13;89H─\u001b[13;90H─\u001b[13;91H─\u001b[13;92H─\u001b[13;93H─\u001b[13;94H─\u001b[13;95H─\u001b[13;96H─\u001b[13;97H─\u001b[13;98H─\u001b[13;99H─\u001b[13;100H─\u001b[13;101H─\u001b[13;102H╮\u001b[14;30H│\u001b[14;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mConfigure main\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;30H│\u001b[15;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.description\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29munset\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b["]
+[24.102, "o", "48;2;22;22;29m│\u001b[16;30H│\u001b[16;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.merge\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mrefs/heads/main\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;30H│\u001b[17;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch.main.remote origin \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;30H│\u001b[18;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.rebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[true|false|\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mdefault:false\u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22"]
+[24.102, "o", ";29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;30H│\u001b[19;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.pushRemote\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[origin]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;30H│\u001b[20;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;30H│\u001b[21;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mConfigure repository defaults\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;30H│\u001b[22;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
+[24.102, "o", "[48;2;22;22;29mpull.rebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[true|false|\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mdefault:false\u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;30H│\u001b[23;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mP\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mremote.pushDefault\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[origin]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;30H│\u001b[24;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;30H│\u001b[25;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
+[24.102, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;30H│\u001b[26;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-f\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Force delete (even if not merged) (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--force\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;30H│\u001b[27;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;30H│\u001b[28;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCheckout \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;30H│\u001b[29;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b"]
+[24.102, "o", "[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch/revision \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mn\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m rename \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;30H│\u001b[30;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m local branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new spin-off \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m delete \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;30H╰\u001b[31;31H─\u001b[31;32H─\u001b[31;33H─\u001b[31;34H─\u001b[31;35H─\u001b[31;36H─\u001b[31;37H─\u001b[31;38H─\u001b[31;39H─\u001b[31;40H─\u001b[31;41H─\u001b[31;42H─\u001b[31;43H─\u001b[31;44H─\u001b[31;45H─\u001b[31"]
+[24.102, "o", ";46H─\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;77H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H─\u001b[31;88H─\u001b[31;89H─\u001b[31;90H─\u001b[31;91H─\u001b[31;92H─\u001b[31;93H─\u001b[31;94H─\u001b[31;95H─\u001b[31;96H─\u001b[31;97H─\u001b[31;98H─\u001b[31;99H─\u001b[31;100H─\u001b[31;101H─\u001b[31;102H╯\u001b[14;31H\u001b[34h\u001b[?25h"]
+[26.078, "o", "\u001b[?25l\u001b[13;30H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;30Hs \u001b[15;30H \u001b[16;30H \u001b[17;30H \u001b[18;30H \u001b[19;30HERENCE.md} \u001b[20;30H \u001b[21;30H \u001b[22;30H \u001b[23;30H \u001b[24;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186"]
+[26.078, "o", "m\u001b[48;2;31;31;40m \u001b[25;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;30H \u001b[28;30H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;30H \u001b[30;30H \u001b[31;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m "]
+[26.078, "o", " \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[26.078, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2"]
+[26.078, "o", ";31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js "]
+[26.078, "o", " \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[26.079, "o", ";2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/git"]
+[26.079, "o", "lad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[26.079, "o", " \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;1"]
+[26.079, "o", "02m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;3"]
+[26.079, "o", "1;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b"]
+[26.079, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
+[27.184, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[27.184, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
+[27.184, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
+[27.184, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[27.184, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[27.184, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
+[27.184, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[27.184, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[27.184, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
+[27.184, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[12;46H╭\u001b[12;47H─\u001b[12;48H─\u001b[12;49H─\u001b[12;50H─\u001b[12;51H─\u001b[12;52H─\u001b[12;53H─\u001b[12;54H─\u001b[12;55H─\u001b[12;56H─\u001b[12;57H─\u001b[12;58H─\u001b[12;59H─\u001b[12;60H─\u001b[12;61H─\u001b[12;62H─\u001b[12;63H─\u001b[12;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Log \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[12;70H─\u001b[12;71H─\u001b[12;72H─\u001b[12;73H─\u001b[12;74H─\u001b[12;75H─\u001b[12;76H─\u001b[12;77H─\u001b[1"]
+[27.184, "o", "2;78H─\u001b[12;79H─\u001b[12;80H─\u001b[12;81H─\u001b[12;82H─\u001b[12;83H─\u001b[12;84H─\u001b[12;85H─\u001b[12;86H─\u001b[12;87H╮\u001b[13;46H│\u001b[13;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;46H│\u001b[14;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m All branches (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----all\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;46H│\u001b[15;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Only merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;46H│\u001b[16;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-M\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
+[27.184, "o", "No merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----no-merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;46H│\u001b[17;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Limit \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--limit=256)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;46H│\u001b[18;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Author \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--author=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=s\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Since \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--since=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84"]
+[27.185, "o", ";84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=u\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Until \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--until=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mLog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log other branch "]
+[27.185, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mh\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mL\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log all branches \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mReflog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H│\u001b[28;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reflog current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;46H│\u001b[29;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mO\u001b[m\u000f\u001b[38;2;200;192;147"]
+[27.185, "o", "m\u001b[48;2;22;22;29m Reflog other ref \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;46H│\u001b[30;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mH\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reflog HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;46H│\u001b[31;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mToggle\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;46H│\u001b[32;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mt\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show tags in refs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;46H╰\u001b[33;47H─\u001b[33;48H─\u001b[33;49H─\u001b[33;50H─\u001b[33;51H─\u001b[33;52H─\u001b[33;53H─\u001b[33;54H─\u001b[33;55H─\u001b[33;56H─\u001b[33;57H─\u001b[33;58H─\u001b[33;59H─\u001b[33;60H─\u001b[33;61H─\u001b[33;62H─\u001b[33;63H─\u001b[33;64H─\u001b[33;65H─\u001b[33;66H─\u001b[33;67H─\u001b[33;68H─\u001b[33;69H─\u001b[33;70H─\u001b[33;71H─\u001b[33;72H─\u001b[33;73H─\u001b"]
+[27.185, "o", "[33;74H─\u001b[33;75H─\u001b[33;76H─\u001b[33;77H─\u001b[33;78H─\u001b[33;79H─\u001b[33;80H─\u001b[33;81H─\u001b[33;82H─\u001b[33;83H─\u001b[33;84H─\u001b[33;85H─\u001b[33;86H─\u001b[33;87H╯\u001b[13;47H\u001b[34h\u001b[?25h"]
+[28.685, "o", "\u001b[?25l\u001b[12;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;46H \u001b[14;46H \u001b[15;46H \u001b[16;46H \u001b[17;46H \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;46H \u001b[28;46H "]
+[28.685, "o", " \u001b[29;46H \u001b[30;46H \u001b[31;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mers\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;46H \u001b[33;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mies\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[9B \r\u001b[42;1H[gitlad] Fetching log...\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[28.685, "o", " \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt "]
+[28.685, "o", " \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[28.685, "o", "1;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1"]
+[28.685, "o", "m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js "]
+[28.685, "o", " \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2"]
+[28.685, "o", "6;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m"]
+[28.685, "o", "\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;3"]
+[28.685, "o", "1;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;18"]
+[28.685, "o", "6m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b["]
+[28.685, "o", "48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
+[28.722, "o", "\u001b[?25l\u001b[26A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 30 seconds ago\u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 31 seconds ago\u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 31 seconds ago\r"]
+[28.722, "o", "\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 31 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
+[28.722, "o", "[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;3"]
+[28.722, "o", "1;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 33 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 33 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3b8c2a8\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 33 seconds ago\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ "]
+[28.722, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[28.722, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[28.722, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[28.722, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mCommits in main (-256) (11) \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mlog[/private/tmp/gitlad-demo-repo/] \u001b[2;3H\u001b[34h\u001b[?25h"]
+[33.088, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
+[33.123, "o", "\u001b[?25l\u001b[60C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m5\u001b[3;54H6\u001b[4;63H6\u001b[5;65H6\u001b[6;67H7\u001b[7;60H7\u001b[8;51H7\u001b[9;69H7\u001b[10;64H8\u001b[11;68H8\u001b[12;67H8\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m512\u001b[2;3H\u001b[34h\u001b[?25h"]
+[34.49, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
+[34.526, "o", "\u001b[?25l\u001b[60C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m6\u001b[3;54H7\u001b[4;63H7\u001b[5;65H7\u001b[6;67H8\u001b[7;60H8\u001b[8;51H8\u001b[9;69H8\u001b[10;64H9\u001b[11;68H9\u001b[12;67H9\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m256\u001b[2;3H\u001b[34h\u001b[?25h"]
+[35.541, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[35.741, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[35.942, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[37.149, "o", "\u001b[?25l"]
+[37.179, "o", "\u001b[3A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 36 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[37.179, "o", "31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago "]
+[37.179, "o", " \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;10"]
+[37.179, "o", "8m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3b8c2a8\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial pr"]
+[37.179, "o", "oject setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[37.179, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[37.179, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[37.179, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://log[/private/tmp/gitlad-demo-repo/] "]
+[37.179, "o", " \u001b[11;28H╭\u001b[11;29H─\u001b[11;30H─\u001b[11;31H─\u001b[11;32H─\u001b[11;33H─\u001b[11;34H─\u001b[11;35H─\u001b[11;36H─\u001b[11;37H─\u001b[11;38H─\u001b[11;39H─\u001b[11;40H─\u001b[11;41H─\u001b[11;42H─\u001b[11;43H─\u001b[11;44H─\u001b[11;45H─\u001b[11;46H─\u001b[11;47H─\u001b[11;48H─\u001b[11;49H─\u001b[11;50H─\u001b[11;51H─\u001b[11;52H─\u001b[11;53H─\u001b[11;54H─\u001b[11;55H─\u001b[11;56H─\u001b[11;57H─\u001b[11;58H─\u001b[11;59H─\u001b[11;60H─\u001b[11;61H─\u001b[11;62H─\u001b[11;63H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Rebase \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[11;72H─\u001b[11;73H─\u001b[11;74H─\u001b[11;75H─\u001b[11;76H─\u001b[11;77H─\u001b[11;78H─\u001b[11;79H─\u001b[11;80H─\u001b[11;81H─\u001b[11;82H─\u001b[11;83H─\u001b[11;84H─\u001b[11;85H─\u001b[11;86H─\u001b[11;87H─\u001b[11;88H─\u001b[11;89H─\u001b[11;90H─\u001b[11;91H─\u001b[11;92H─\u001b[11;93H─\u001b[11;94H─\u001b[11;95H─\u001b[11;96H─\u001b[11;97H─\u001b[11;98H─\u001b[11;99H─\u001b[11;100H─\u001b[11;101H─\u001b[11;102H─\u001b[11;103H─\u001b[11;104H─\u001b[11;105H╮\u001b[12;28H│\u001b[12;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
+[37.179, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[13;28H│\u001b[13;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-k\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Keep empty commits (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--keep-empty\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;28H│\u001b[14;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-r\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Rebase merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--rebase-merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;28H│\u001b[15;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-u\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Update branches (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--update-refs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) "]
+[37.179, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;28H│\u001b[16;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-d\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Use author date as committer date (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--committer-date-is-author-date\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;28H│\u001b[17;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-t\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Use current time as author date (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--ignore-date\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;28H│\u001b[18;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Autosquash (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--autosquash\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) "]
+[37.179, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;28H│\u001b[19;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-A\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Autostash (\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m--autostash\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;28H│\u001b[20;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-i\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Interactive (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--interactive\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;28H│\u001b[21;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-h\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Disable hooks (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--no-verify\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b["]
+[37.179, "o", "48;2;22;22;29m│\u001b[22;28H│\u001b[22;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;28H│\u001b[23;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mRebase main onto\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;28H│\u001b[24;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m origin/main \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;28H│\u001b[25;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m origin/main \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;28H│\u001b[26;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b["]
+[37.179, "o", "m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m elsewhere \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;28H│\u001b[27;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mRebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;28H│\u001b[28;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mi\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m interactively \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;28H│\u001b[29;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m a subset \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;28H│\u001b[30;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to"]
+[37.179, "o", " modify a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;28H│\u001b[31;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to reword a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;28H│\u001b[32;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to remove a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;28H│\u001b[33;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to autosquash \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;28H╰\u001b[34;29H─\u001b[34;30H─\u001b[34;31H─\u001b[34;32H─\u001b[34;33H─\u001b[34;34H─\u001b[34;35H─\u001b[34;36H─\u001b[34;37H─\u001b[34;38H─\u001b[34;39H─\u001b[34;40H─\u001b["]
+[37.179, "o", "34;41H─\u001b[34;42H─\u001b[34;43H─\u001b[34;44H─\u001b[34;45H─\u001b[34;46H─\u001b[34;47H─\u001b[34;48H─\u001b[34;49H─\u001b[34;50H─\u001b[34;51H─\u001b[34;52H─\u001b[34;53H─\u001b[34;54H─\u001b[34;55H─\u001b[34;56H─\u001b[34;57H─\u001b[34;58H─\u001b[34;59H─\u001b[34;60H─\u001b[34;61H─\u001b[34;62H─\u001b[34;63H─\u001b[34;64H─\u001b[34;65H─\u001b[34;66H─\u001b[34;67H─\u001b[34;68H─\u001b[34;69H─\u001b[34;70H─\u001b[34;71H─\u001b[34;72H─\u001b[34;73H─\u001b[34;74H─\u001b[34;75H─\u001b[34;76H─\u001b[34;77H─\u001b[34;78H─\u001b[34;79H─\u001b[34;80H─\u001b[34;81H─\u001b[34;82H─\u001b[34;83H─\u001b[34;84H─\u001b[34;85H─\u001b[34;86H─\u001b[34;87H─\u001b[34;88H─\u001b[34;89H─\u001b[34;90H─\u001b[34;91H─\u001b[34;92H─\u001b[34;93H─\u001b[34;94H─\u001b[34;95H─\u001b[34;96H─\u001b[34;97H─\u001b[34;98H─\u001b[34;99H─\u001b[34;100H─\u001b[34;101H─\u001b[34;102H─\u001b[34;103H─\u001b[34;104H─\u001b[34;105H╯\u001b[12;29H\u001b[34h\u001b[?25h"]
+[40.245, "o", "\u001b[?25l\u001b[11;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[12;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40metup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[13;28H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \u001b[14;28H \u001b[15;28H \u001b[16;28H \u001b[17;28H \u001b[18;28H "]
+[40.245, "o", " \u001b[19;28H \u001b[20;28H \u001b[21;28H \u001b[22;28H \u001b[23;28H \u001b[24;28H \u001b[25;28H \u001b[26;28H \u001b[27;28H \u001b[28;28H \u001b[29;28H \u001b[30;28H "]
+[40.245, "o", " \u001b[31;28H \u001b[32;28H \u001b[33;28H \u001b[34;28H \u001b[2;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 36 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;1"]
+[40.245, "o", "86m\u001b[48;2;31;31;40m 37 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102"]
+[40.246, "o", "m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;3"]
+[40.246, "o", "1;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd"]
+[40.246, "o", " configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3b8c2a8\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
+[40.246, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[40.246, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[40.246, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[40.246, "o", " \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://log[/private/tmp/gitlad-demo-repo/] \u001b[5;3H\u001b[34h\u001b[?25h"]
+[41.148, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.t"]
+[41.148, "o", "xt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \u001b[8;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
+[41.148, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js "]
+[41.149, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b"]
+[41.149, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;1"]
+[41.149, "o", "95;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[41.149, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up au"]
+[41.149, "o", "th middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m"]
+[41.149, "o", "origin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[41.149, "o", "31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[41.149, "o", "3;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[26;3H\u001b[34h\u001b[?25h"]
+[42.258, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[1;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[2;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[3;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[4;3H○\u001b[4;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
+[42.258, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[7;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43"]
+[42.258, "o", ";51;40m●\u001b[8;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[9;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[42.258, "o", " \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[42.258, "o", " \u001b[15;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
+[42.258, "o", "[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main"]
+[42.258, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;3"]
+[42.258, "o", "1;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:54]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(38ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:53]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -512\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(37ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:48]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b["]
+[42.258, "o", "m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(36ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get pull.rebase\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;"]
+[42.258, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(11ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(11ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.pushRemote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(12ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;3"]
+[42.258, "o", "1;31;40mgit config --default --get branch.main.rebase\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(12ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(13ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(15ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;4"]
+[42.258, "o", "0m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.description\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(30ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:39]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(26ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:34]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(19ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:"]
+[42.258, "o", "43:30]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(15ms)\u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mhistory \r\u001b[15A\u001b[34h\u001b[?25h"]
+[44.854, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H? assets/new-image.bin "]
+[44.854, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \u001b[7;3H? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[44.854, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js "]
+[44.854, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[15;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[44.854, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b"]
+[44.854, "o", "[20;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b"]
+[44.854, "o", "[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[44.854, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;"]
+[44.854, "o", "152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b"]
+[44.855, "o", "[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40"]
+[44.855, "o", "m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[26;3H\u001b[34h\u001b[?25h"]
+[48.374, "o", "\u001b[?25l\u001b[?2031l\u001b[2 q\u001b[?1002l\u001b[?1006l\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[?1l\u001b>\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
+[48.375, "o", "\u001b[?25l\r\u001b[16B\u001b[?1049l\u001b[34h\u001b[?25h"]
+[48.376, "x", "0"]
diff --git a/docs/demo.cast b/docs/demo-basics.cast
similarity index 55%
rename from docs/demo.cast
rename to docs/demo-basics.cast
index cacef5d..f1185bd 100644
--- a/docs/demo.cast
+++ b/docs/demo-basics.cast
@@ -1,7 +1,7 @@
-{"version":3,"term":{"cols":130,"rows":42,"type":"tmux-256color","version":"tmux 3.6a"},"timestamp":1771494277,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/bin/zsh"}}
-[0.010, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
-[0.006, "o", "\u001b]11;?\u0007"]
-[0.011, "o", "\u001bP+q4D73\u001b\\"]
+{"version":3,"term":{"cols":130,"rows":42,"type":"tmux-256color","version":"tmux 3.6a"},"timestamp":1772019800,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/nix/store/ngqf98amj0hv0jhzhz540p03wxjj0chj-bash-interactive-5.3p9/bin/bash"}}
+[0.012, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
+[0.005, "o", "\u001b]11;?\u0007"]
+[0.010, "o", "\u001bP+q4D73\u001b\\"]
[0.000, "o", "\u001b[?25l\u001b[?2031h\u001b[>4;2m\u001b[m\u000f\u001b[H \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
@@ -13,128 +13,133 @@
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n "]
-[0.000, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.5\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
+[0.000, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.5\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
[0.000, "o", " \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNvim is open source and freely distributable\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mhttps://neovim.io/#chat\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ "]
-[0.000, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.001, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
[0.000, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
-[0.082, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
+[0.083, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
[1.619, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
-[0.012, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
-[0.022, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[0.014, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
+[0.201, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
[0.000, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
-[0.013, "o", "\u001b[?25l"]
-[0.010, "o", "\u001b[34h\u001b[?25h"]
-[0.050, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
-[0.012, "o", "\u001b[?25l"]
-[0.004, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138"]
+[0.021, "o", "\u001b[?25l"]
+[0.030, "o", "\u001b[34h\u001b[?25h"]
+[0.012, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
+[0.080, "o", "\u001b[?25l⠸\b\u001b[34h\u001b[?25h"]
+[0.011, "o", "\u001b[?25l"]
+[0.012, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138"]
[0.000, "o", ";169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js "]
[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;1"]
[0.000, "o", "13;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} "]
[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m"]
[0.000, "o", "\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/pr"]
-[0.000, "o", "ivate/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31"]
-[0.000, "o", ";31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and te"]
-[0.000, "o", "st runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
-[3.183, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[0.000, "o", "ivate/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31"]
+[0.000, "o", ";31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and te"]
+[0.000, "o", "st runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
+[2.929, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;"]
-[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
-[0.000, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[10;32H╭\u001b[10;33H─\u001b[10;34H─\u001b[10;35H─\u001b[10;36H─\u001b[10;37H─\u001b[10;38H─\u001b[10;39H─\u001b[10;40H─\u001b[10;41H─\u001b[10;42H─\u001b[10;43H─\u001b[10;44H─\u001b[10;45H─\u001b[10;46H─\u001b[10;47H─\u001b[10;48H─\u001b[10;49H─\u001b[10;50H─\u001b[10;51H─\u001b[10;52H─\u001b[10;53H─\u001b[10;54H─\u001b[10;55H─\u001b[10;56H─\u001b[10;57H─\u001b[10;58H─\u001b[10;59H─\u001b[10;60H─\u001b[10;61H─\u001b[10;62H─\u001b["]
-[0.000, "o", "10;63H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[10;70H─\u001b[10;71H─\u001b[10;72H─\u001b[10;73H─\u001b[10;74H─\u001b[10;75H─\u001b[10;76H─\u001b[10;77H─\u001b[10;78H─\u001b[10;79H─\u001b[10;80H─\u001b[10;81H─\u001b[10;82H─\u001b[10;83H─\u001b[10;84H─\u001b[10;85H─\u001b[10;86H─\u001b[10;87H─\u001b[10;88H─\u001b[10;89H─\u001b[10;90H─\u001b[10;91H─\u001b[10;92H─\u001b[10;93H─\u001b[10;94H─\u001b[10;95H─\u001b[10;96H─\u001b[10;97H─\u001b[10;98H─\u001b[10;99H─\u001b[10;100H╮\u001b[11;32H│\u001b[11;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mTransient commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[12;32H│\u001b[12;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log \u001b[m\u000f\u001b[38;2"]
-[0.000, "o", ";84;84;109m\u001b[48;2;22;22;29m│\u001b[13;32H│\u001b[13;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Push \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Pull \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Fetch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;32H│\u001b[14;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Rebase \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Merge \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;32H│\u001b[15;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mz\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stash \u001b[m\u000f\u001b[3m\u001b[38;2"]
-[0.000, "o", ";149;127;184m\u001b[48;2;22;22;29mA\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Cherry-pick \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m_\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Revert \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;32H│\u001b[16;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mX\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reset \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m'\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Submodule \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mZ\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;32H│\u001b[17;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mM\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Remotes \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mW\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Patch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Apply patches \u001b[m"]
-[0.000, "o", "\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;32H│\u001b[18;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29myr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m References \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;32H│\u001b[19;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;32H│\u001b[20;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mApplying changes\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;32H│\u001b[21;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Intent to add "]
-[0.001, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;32H│\u001b[22;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Discard \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mU\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;32H│\u001b[23;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;32H│\u001b[24;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mNavigation\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;32H│\u001b[25;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;2"]
-[0.000, "o", "2;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next section \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;32H│\u001b[26;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;32H│\u001b[27;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m1\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Headers only \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m2\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show items \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diffs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;2"]
-[0.000, "o", "2;22;29m│\u001b[28;32H│\u001b[28;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Visit file \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Edit file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;32H│\u001b[29;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;32H│\u001b[30;33H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEssential commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;32H│\u001b[31;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Refresh \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m$\u001b[m\u000f\u001b[38;2;200;192;147"]
-[0.000, "o", "m\u001b[48;2;22;22;29m Git command history \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;32H│\u001b[32;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mys\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Yank section value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mq\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close buffer \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;32H│\u001b[33;33H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m?\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m This help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;32H╰\u001b[34;33H─\u001b[34;34H─\u001b[34;35H─\u001b[34;36H─\u001b[34;37H─\u001b[34;38H─\u001b[34;39H─\u001b[34;40H─\u001b[34;41H─\u001b[34;42H─\u001b[34;43H─\u001b[34;44H─\u001b[34;45H─\u001b[34;46H─\u001b[34;47H─\u001b[34;48H─\u001b[34;49H─\u001b[34;50H─\u001b[34;51H─\u001b[34;52H─\u001b[34;53H─\u001b[34;54H─\u001b[34;55H─\u001b[34;56H─\u001b[34;57H─\u001b[34;58H─\u001b[34;59H─\u001b[34;60H─\u001b[34;61H─\u001b[34;62H─\u001b[34;63H"]
-[0.000, "o", "─\u001b[34;64H─\u001b[34;65H─\u001b[34;66H─\u001b[34;67H─\u001b[34;68H─\u001b[34;69H─\u001b[34;70H─\u001b[34;71H─\u001b[34;72H─\u001b[34;73H─\u001b[34;74H─\u001b[34;75H─\u001b[34;76H─\u001b[34;77H─\u001b[34;78H─\u001b[34;79H─\u001b[34;80H─\u001b[34;81H─\u001b[34;82H─\u001b[34;83H─\u001b[34;84H─\u001b[34;85H─\u001b[34;86H─\u001b[34;87H─\u001b[34;88H─\u001b[34;89H─\u001b[34;90H─\u001b[34;91H─\u001b[34;92H─\u001b[34;93H─\u001b[34;94H─\u001b[34;95H─\u001b[34;96H─\u001b[34;97H─\u001b[34;98H─\u001b[34;99H─\u001b[34;100H╯\u001b[11;33H\u001b[34h\u001b[?25h"]
-[3.098, "o", "\u001b[?25l\u001b[10;32H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;32H \u001b[12;32H \u001b[13;32H \u001b[14;32H \u001b[15;32H \u001b[16;32H \u001b[17;32H \u001b[18;32H \u001b[19;32HENCE.md} \u001b[20;32H \u001b[21;32H \u001b[22;32H "]
-[0.000, "o", " \u001b[23;32H \u001b[24;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;32H \u001b[28;32H \u001b[29;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mre and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mddleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[31;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;32H \u001b[33;32H \u001b[34;32H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mre and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt "]
-[0.000, "o", " \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48"]
-[0.000, "o", ";2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40"]
-[0.000, "o", "mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js "]
-[0.000, "o", " \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31"]
-[0.000, "o", ";31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b["]
-[0.000, "o", "48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and "]
-[0.000, "o", "formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;1"]
-[0.000, "o", "47m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[6;3H\u001b[34h\u001b[?25h"]
-[0.801, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;"]
+[0.001, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[0.000, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[6;28H╭\u001b[6;29H─\u001b[6;30H─\u001b[6;31H─\u001b[6;32H─\u001b[6;33H─\u001b[6;34H─\u001b[6;35H─\u001b[6;36H─\u001b[6;37H─\u001b[6;38H─\u001b[6;39H─\u001b[6;40H─\u001b[6;41H─\u001b[6;42H─\u001b[6;43H─\u001b[6;44H─\u001b[6;45H─\u001b[6;46H─\u001b[6;47H─\u001b[6;48H─\u001b[6;49H─\u001b[6;50H─\u001b[6;51H─\u001b[6;52H─\u001b[6;53H─\u001b[6;54H─\u001b[6;55H─\u001b[6;56H─\u001b[6;57H─\u001b[6;58H─\u001b[6;59H─\u001b[6;60H─\u001b[6;61H─\u001b[6"]
+[0.000, "o", ";62H─\u001b[6;63H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[6;70H─\u001b[6;71H─\u001b[6;72H─\u001b[6;73H─\u001b[6;74H─\u001b[6;75H─\u001b[6;76H─\u001b[6;77H─\u001b[6;78H─\u001b[6;79H─\u001b[6;80H─\u001b[6;81H─\u001b[6;82H─\u001b[6;83H─\u001b[6;84H─\u001b[6;85H─\u001b[6;86H─\u001b[6;87H─\u001b[6;88H─\u001b[6;89H─\u001b[6;90H─\u001b[6;91H─\u001b[6;92H─\u001b[6;93H─\u001b[6;94H─\u001b[6;95H─\u001b[6;96H─\u001b[6;97H─\u001b[6;98H─\u001b[6;99H─\u001b[6;100H─\u001b[6;101H─\u001b[6;102H─\u001b[6;103H─\u001b[6;104H╮\u001b[7;28H│\u001b[7;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mTransient commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[8;28H│\u001b[8;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[9;28H│\u001b[9;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Push \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Pull \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Fetch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[10;28H│\u001b[10;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Rebase \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Merge \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[11;28H│\u001b[11;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mz\u001b[m\u000f\u001b[38;2;200;192;147"]
+[0.000, "o", "m\u001b[48;2;22;22;29m Stash \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mA\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Cherry-pick \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m_\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Revert \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[12;28H│\u001b[12;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mX\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reset \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m'\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Submodule \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mZ\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[13;28H│\u001b[13;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mM\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Remotes \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mW\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Patch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2"]
+[0.000, "o", ";200;192;147m\u001b[48;2;22;22;29m Apply patches \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;28H│\u001b[14;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29myr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m References \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mB\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Blame \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mN\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Forge \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;28H│\u001b[15;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;28H│\u001b[16;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mApplying changes\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;28H│\u001b[17;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b["]
+[0.000, "o", "38;2;200;192;147m\u001b[48;2;22;22;29m Stage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Intent to add \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;28H│\u001b[18;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Discard \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mU\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unstage all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;28H│\u001b[19;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;28H│\u001b[20;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mNavigation\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;28H│\u001b[21;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous item \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next section \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;28H│\u001b[22;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle section \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle all \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;28H│\u001b[23;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;"]
+[0.000, "o", "22;22;29m1\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Headers only \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m2\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show items \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diffs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;28H│\u001b[24;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show all \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Visit file \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Edit file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;28H│\u001b[25;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;28H│\u001b[26;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiff view\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;"]
+[0.000, "o", "29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;28H│\u001b[27;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mq\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close diff view \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgj\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next file \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;28H│\u001b[28;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m]c\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next hunk \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m[c\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Previous hunk \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Select file \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;28H│\u001b[29;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149"]
+[0.000, "o", ";127;184m\u001b[48;2;22;22;29mgr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Refresh \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m:w\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Save edits \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next commit (PR) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;28H│\u001b[30;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Prev commit (PR) \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m]t\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Next review thread \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m[t\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Prev review thread \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;28H│\u001b[31;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle thread \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Add review com"]
+[0.000, "o", "ment \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reply to thread \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;28H│\u001b[32;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Submit review \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mP\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Toggle pending mode \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage file (merge) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;28H│\u001b[33;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;28H│\u001b[34;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEssential commands\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[35;28H│\u001b[35;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b["]
+[0.000, "o", "m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mgr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Refresh \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m$\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Git command history \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[36;28H│\u001b[36;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mys\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Yank section value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mq\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close buffer \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[37;28H│\u001b[37;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m?\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m This help \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[38;28H╰\u001b[38;29H─\u001b[38;30H─\u001b[38;31H─\u001b[38;32H─\u001b[38;33H─\u001b[38;34H─\u001b[38;35H─\u001b[38;36H─\u001b[38;37H─\u001b[38;38H─\u001b[38;39H─\u001b[38;40H─\u001b[38;41H─\u001b["]
+[0.000, "o", "38;42H─\u001b[38;43H─\u001b[38;44H─\u001b[38;45H─\u001b[38;46H─\u001b[38;47H─\u001b[38;48H─\u001b[38;49H─\u001b[38;50H─\u001b[38;51H─\u001b[38;52H─\u001b[38;53H─\u001b[38;54H─\u001b[38;55H─\u001b[38;56H─\u001b[38;57H─\u001b[38;58H─\u001b[38;59H─\u001b[38;60H─\u001b[38;61H─\u001b[38;62H─\u001b[38;63H─\u001b[38;64H─\u001b[38;65H─\u001b[38;66H─\u001b[38;67H─\u001b[38;68H─\u001b[38;69H─\u001b[38;70H─\u001b[38;71H─\u001b[38;72H─\u001b[38;73H─\u001b[38;74H─\u001b[38;75H─\u001b[38;76H─\u001b[38;77H─\u001b[38;78H─\u001b[38;79H─\u001b[38;80H─\u001b[38;81H─\u001b[38;82H─\u001b[38;83H─\u001b[38;84H─\u001b[38;85H─\u001b[38;86H─\u001b[38;87H─\u001b[38;88H─\u001b[38;89H─\u001b[38;90H─\u001b[38;91H─\u001b[38;92H─\u001b[38;93H─\u001b[38;94H─\u001b[38;95H─\u001b[38;96H─\u001b[38;97H─\u001b[38;98H─\u001b[38;99H─\u001b[38;100H─\u001b[38;101H─\u001b[38;102H─\u001b[38;103H─\u001b[38;104H╯\u001b[7;29H\u001b[34h\u001b[?25h"]
+[3.095, "o", "\u001b[?25l\u001b[6;28H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;28H \u001b[8;28Hwn.js \u001b[9;28H \u001b[10;28H \u001b[11;28H \u001b[12;28H \u001b[13;28H \u001b[14;28H.js \u001b[15;28H \u001b[16;28H \u001b[17;28H "]
+[0.001, "o", " \u001b[18;28H \u001b[19;28HEFERENCE.md} \u001b[20;28Hs \u001b[21;28Hs \u001b[22;28H \u001b[23;28H \u001b[24;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mgitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mgitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mgitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[27;28H \u001b[28;28H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mn middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;28H \u001b[33;28H \u001b[34;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mleware and formatters\u001b[m\u000f\u001b["]
+[0.000, "o", "38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mn middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40me App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;"]
+[0.000, "o", "2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js "]
+[0.000, "o", " \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js "]
+[0.000, "o", " \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;21"]
+[0.000, "o", "5;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middlew"]
+[0.000, "o", "are and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H \u001b[33;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b"]
+[0.000, "o", "[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[6;3H\u001b[34h\u001b[?25h"]
+[0.799, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.150, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.150, "o", "\u001b[?25l\n\n\n\u001b[34h\u001b[?25h"]
+[0.151, "o", "\u001b[?25l\n\n\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.612, "o", "\u001b[?25l"]
-[0.064, "o", "\r\u001b[14;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv\r\nv \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;73;68;60m@@ -3,17 +3,27 @@ class Button {\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\u001b[17;8H\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40"]
+[0.640, "o", "\u001b[?25l"]
+[0.068, "o", "\r\u001b[14;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv\r\nv \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;73;68;60m@@ -3,17 +3,27 @@ class Button {\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\u001b[17;8H\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40"]
[0.000, "o", "mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m;\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;3"]
[0.000, "o", "1;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;6H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrender\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m{\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;248;113;113m\u001b[48;2;74;42;42m-\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;74;42;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;74;42;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mconst\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[];\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[25;3H\u001b[m\u000f"]
[0.000, "o", "\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m||\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mpush\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'disabled'\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m);\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
[0.000, "o", " \u001b[26;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mattrs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mpush\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'data-loading'\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m);\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mconst\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mlabel\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m'Loading...'\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mlabel\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
-[0.001, "o", " \u001b[29;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[30;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;4"]
+[0.000, "o", " \u001b[29;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m``\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[30;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;4"]
[0.000, "o", "0m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H \u001b[32;6H\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mclick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m{\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;248;113;113m\u001b[48;2;74;42;42m-\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;74;42;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;74;42;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m&&\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;74;42;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;74;42;42monClick\u001b[m"]
[0.000, "o", "\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[34;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mdisabled\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m&&\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m!\u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m&&\u001b[m\u000f\u001b[38;2;220;215;"]
[0.000, "o", "186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;31;31;40mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40monClick\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m();\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
[0.000, "o", " \u001b[39;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42msetLoading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[40;3H\u001b[m\u000f\u001b[38;2;74;222;128m\u001b[48;2;42;74;42m+\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;228;104;118m\u001b[48;2;42;74;42mthis\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mloading\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74"]
[0.000, "o", ";42m;\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[14;3H\u001b[34h\u001b[?25h"]
-[1.627, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[1.595, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.152, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.152, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.150, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[1.204, "o", "\u001b[?25l"]
-[0.008, "o", "\r\u001b[8A\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\r\n> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js\u001b[17;8H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b["]
+[0.152, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[1.206, "o", "\u001b[?25l"]
+[0.020, "o", "\r\u001b[8A\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\r\n> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js\u001b[17;8H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b["]
[0.000, "o", "20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js\u001b[22;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;"]
-[0.000, "o", "2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
-[0.000, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[32;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;"]
-[0.000, "o", "105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
-[0.000, "o", ";2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;3H\u001b[34h\u001b[?25h"]
-[1.594, "o", "\u001b[?25l\n\n\u001b[34h\u001b[?25h"]
+[0.000, "o", "2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[0.000, "o", "48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[32;6H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;"]
+[0.000, "o", "105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
+[0.000, "o", ";2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;3H\u001b[34h\u001b[?25h"]
+[1.580, "o", "\u001b[?25l\n\n\u001b[34h\u001b[?25h"]
[1.453, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.150, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.150, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.151, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[1.404, "o", "\u001b[?25l"]
-[0.007, "o", "\r\u001b[28;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[29;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatter\u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2"]
-[0.000, "o", ";31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[3"]
-[0.000, "o", "8;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[28;3H\u001b[34h\u001b[?25h"]
-[1.098, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[1.408, "o", "\u001b[?25l"]
+[0.026, "o", "\r\u001b[28;1H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m>\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[29;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatter\u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2"]
+[0.000, "o", ";31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[3"]
+[0.000, "o", "8;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[28;3H\u001b[34h\u001b[?25h"]
+[1.078, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
+[0.001, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;37H╭\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─"]
+[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
+[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;37H╭\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─"]
[0.000, "o", "\u001b[13;72H─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H─\u001b[13;88H─\u001b[13;89H─\u001b[13;90H─\u001b[13;91H─\u001b[13;92H─\u001b[13;93H─\u001b[13;94H─\u001b[13;95H╮\u001b[14;37H│\u001b[14;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;37H│\u001b[15;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Stage all modified and deleted files (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--all\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;37H│\u001b[16;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-e\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Allow empty commit (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--allow-empty\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;2"]
[0.000, "o", "2;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;37H│\u001b[17;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-v\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show diff of changes to be committed (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--verbose\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;37H│\u001b[18;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Disable hooks (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--no-verify\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;37H│\u001b[19;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=A\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Override the author \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--author=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;37H│\u001b"]
[0.000, "o", "[20;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=S\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Add Signed-off-by trailer \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--signoff)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;37H│\u001b[21;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;37H│\u001b[22;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;37H│\u001b[23;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;37H│\u001b[24;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mEdit HEAD\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
[0.000, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;37H│\u001b[25;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29me\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Extend \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;37H│\u001b[26;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reword \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;37H│\u001b[27;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ma\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Amend \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;37H│\u001b[28;38H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mInstant\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;37H│\u001b[29;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22"]
[0.000, "o", ";22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mF\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Instant fixup \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;37H│\u001b[30;38H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mS\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Instant squash \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;37H╰\u001b[31;38H─\u001b[31;39H─\u001b[31;40H─\u001b[31;41H─\u001b[31;42H─\u001b[31;43H─\u001b[31;44H─\u001b[31;45H─\u001b[31;46H─\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;77H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H─\u001b[31;88H─\u001b[31;89H─\u001b[31;90H─\u001b[31;91"]
[0.000, "o", "H─\u001b[31;92H─\u001b[31;93H─\u001b[31;94H─\u001b[31;95H╯\u001b[14;38H\u001b[34h\u001b[?25h"]
-[2.600, "o", "\u001b[?25l\u001b[13;37H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H \u001b[15;37H \u001b[16;37H \u001b[17;37H \u001b[18;37H \u001b[19;37Hmd} \u001b[20;37H \u001b[21;37H \u001b[22;37H \u001b[23;37H \u001b[24;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;1"]
+[2.597, "o", "\u001b[?25l\u001b[13;37H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H \u001b[15;37H \u001b[16;37H \u001b[17;37H \u001b[18;37H \u001b[19;37Hmd} \u001b[20;37H \u001b[21;37H \u001b[22;37H \u001b[23;37H \u001b[24;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;1"]
[0.000, "o", "86m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mmo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H \u001b[28;37H \u001b[29;37H \u001b[30;37H \u001b[31;37H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40md formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth "]
[0.000, "o", "middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin "]
[0.000, "o", " \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md "]
@@ -142,66 +147,21 @@
[0.000, "o", " \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;5"]
[0.000, "o", "1;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b"]
[0.000, "o", "[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;3"]
-[0.000, "o", "1;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
-[1.103, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[0.001, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[18;46H╭\u001b[18;47H─\u001b[18;48H─\u001b[18;49H─\u001b[18;50H─\u001b[18;51H─\u001b[18;52H─\u001b[18;53H─\u001b[18;54H─\u001b[18;55H─\u001b[18;56H─\u001b[18;57H─\u001b[18;58H─\u001b[18;59H─\u001b[18;60H─\u001b[18;61H─\u001b[18;62H─\u001b[18;63H─\u001b[18;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Diff \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[18;71H─\u001b[18;72H─\u001b[18;73H─\u001b[18;74H─\u001b[18;75H─\u001b[18;76H─\u001b[18;77H─\u001b[18;78H─\u001b["]
-[0.000, "o", "18;79H─\u001b[18;80H─\u001b[18;81H─\u001b[18;82H─\u001b[18;83H─\u001b[18;84H─\u001b[18;85H─\u001b[18;86H─\u001b[18;87H╮\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDiffing\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff (dwim) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff staged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff unstaged \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b"]
-[0.000, "o", "[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Diff range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Build range... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H╰\u001b[26;47H─\u001b[26;48H─\u001b[26;49H─\u001b[26;50H─\u001b[26;51H─\u001b[26;52H─\u001b[26;53H─\u001b[26;54H─\u001b[26;55H─\u001b[26;56H─\u001b[26;57H─\u001b[26;58H─\u001b[26;59H─\u001b[26;60H─\u001b[26;61H─\u001b[26;62H─\u001b[26;63H─\u001b[26;64H─\u001b[26;65H─\u001b[26;66H─\u001b[26;67H─\u001b[26;68H─\u001b[26;69H─\u001b[26;70H─\u001b[26;71H─\u001b[26;72H─\u001b[26;73H─\u001b[26;74H─\u001b[26;75H─\u001b[26;76H─\u001b[26;77H─\u001b[26;78H─\u001b[26;79H─\u001b[26;80H─\u001b[26;81H─\u001b[26;82H─\u001b[26;83H─\u001b[26;84H─\u001b[26;85H─\u001b[26;86H─"]
-[0.000, "o", "\u001b[26;87H╯\u001b[19;47H\u001b[34h\u001b[?25h"]
-[2.111, "o", "\u001b[?25l\u001b[18;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;47H\u001b[34h\u001b[?25h"]
-[0.018, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//s/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m d///p/0/DiffviewFilePanel \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;149;127;184m\u001b[48;2;54;54;70m…\u001b[2;4H/private/tmp/gitlad-demo-repo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mHelp: \u001b[0;1m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mg?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \r\n \u001b[0;1m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mChanges \u001b[0;1m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40m(0)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r"]
-[0.000, "o", "\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11;36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;1"]
-[0.000, "o", "86m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m"]
-[0.000, "o", "\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
-[0.000, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
-[0.000, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48"]
-[0.000, "o", ";2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b["]
-[0.000, "o", "38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b["]
-[0.000, "o", "m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;"]
-[0.000, "o", "31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[28;3H\u001b[34h\u001b[?25h"]
-[1.603, "o", "\u001b[?25l"]
-[0.042, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[1.106, "o", "\u001b[?25l"]
+[0.123, "o", "\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b["]
[0.000, "o", "48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s"]
[0.000, "o", "rc/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;18"]
[0.000, "o", "6m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
[0.000, "o", "\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
-[0.000, "o", ";2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;"]
-[0.000, "o", "2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;30H╭\u001b[13;31H─\u001b[13;32H─\u001b[13;33H─\u001b[13;34H─\u001b[13;35H─\u001b[13;36H─\u001b[13;37H─\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48"]
+[0.000, "o", ";2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;"]
+[0.000, "o", "2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;30H╭\u001b[13;31H─\u001b[13;32H─\u001b[13;33H─\u001b[13;34H─\u001b[13;35H─\u001b[13;36H─\u001b[13;37H─\u001b[13;38H─\u001b[13;39H─\u001b[13;40H─\u001b[13;41H─\u001b[13;42H─\u001b[13;43H─\u001b[13;44H─\u001b[13;45H─\u001b[13;46H─\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48"]
[0.000, "o", ";2;22;22;29m Branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;71H─\u001b[13;72H─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H─\u001b[13;88H─\u001b[13;89H─\u001b[13;90H─\u001b[13;91H─\u001b[13;92H─\u001b[13;93H─\u001b[13;94H─\u001b[13;95H─\u001b[13;96H─\u001b[13;97H─\u001b[13;98H─\u001b[13;99H─\u001b[13;100H─\u001b[13;101H─\u001b[13;102H╮\u001b[14;30H│\u001b[14;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mConfigure main\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;30H│\u001b[15;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29md\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.description\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29munset\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b["]
[0.000, "o", "48;2;22;22;29m│\u001b[16;30H│\u001b[16;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.merge\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mrefs/heads/main\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;30H│\u001b[17;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch.main.remote origin \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;30H│\u001b[18;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.rebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[true|false|\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29mdefault:false\u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22"]
[0.000, "o", ";29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;30H│\u001b[19;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29mbranch.main.pushRemote\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;122;168;159m\u001b[48;2;22;22;29m[origin]\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;30H│\u001b[20;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;30H│\u001b[21;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mConfigure repository defaults\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;30H│\u001b[22;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
@@ -209,7 +169,7 @@
[0.000, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;30H│\u001b[26;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-f\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Force delete (even if not merged) (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--force\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;30H│\u001b[27;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;30H│\u001b[28;31H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCheckout \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mDo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;30H│\u001b[29;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b"]
[0.000, "o", "[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch/revision \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mn\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m rename \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;30H│\u001b[30;31H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m local branch \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m new spin-off \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mx\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m delete \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;30H╰\u001b[31;31H─\u001b[31;32H─\u001b[31;33H─\u001b[31;34H─\u001b[31;35H─\u001b[31;36H─\u001b[31;37H─\u001b[31;38H─\u001b[31;39H─\u001b[31;40H─\u001b[31;41H─\u001b[31;42H─\u001b[31;43H─\u001b[31;44H─\u001b[31;45H─\u001b[31"]
[0.000, "o", ";46H─\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;77H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H─\u001b[31;88H─\u001b[31;89H─\u001b[31;90H─\u001b[31;91H─\u001b[31;92H─\u001b[31;93H─\u001b[31;94H─\u001b[31;95H─\u001b[31;96H─\u001b[31;97H─\u001b[31;98H─\u001b[31;99H─\u001b[31;100H─\u001b[31;101H─\u001b[31;102H╯\u001b[14;31H\u001b[34h\u001b[?25h"]
-[2.057, "o", "\u001b[?25l\u001b[13;30H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;30Hs \u001b[15;30H \u001b[16;30H \u001b[17;30H \u001b[18;30H \u001b[19;30HERENCE.md} \u001b[20;30H \u001b[21;30H \u001b[22;30H \u001b[23;30H \u001b[24;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186"]
+[1.976, "o", "\u001b[?25l\u001b[13;30H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;30Hs \u001b[15;30H \u001b[16;30H \u001b[17;30H \u001b[18;30H \u001b[19;30HERENCE.md} \u001b[20;30H \u001b[21;30H \u001b[22;30H \u001b[23;30H \u001b[24;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186"]
[0.000, "o", "m\u001b[48;2;31;31;40m \u001b[25;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mtlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;30H \u001b[28;30H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;30H \u001b[30;30H \u001b[31;30H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m "]
[0.000, "o", " \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2"]
@@ -217,126 +177,59 @@
[0.000, "o", " \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48"]
[0.001, "o", ";2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/git"]
[0.000, "o", "lad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;1"]
-[0.000, "o", "02m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;3"]
-[0.000, "o", "1;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b"]
-[0.000, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
-[1.103, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[20;46H╭\u001b[20;47H─\u001b[20;48H─\u001b[20;49H─\u001b[20;50H─\u001b[20;51H─\u001b[20;52H─\u001b[20;53H─\u001b[20;54H─\u001b[20;55H─\u001b[20;56H─\u001b[20;57H─\u001b[20;58H─\u001b[20;59H─\u001b[20;60H─\u001b[20;61H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m References \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[20;74H─\u001b[20;75H─\u001b[20;76H─\u001b[20;77H─\u001b[20;78H─\u001b[20;79H─\u001b[20;80H─\u001b[20;81H─\u001b[20;82H─\u001b[20;83H─\u001b[20;84"]
-[0.000, "o", "H─\u001b[20;85H─\u001b[20;86H─\u001b[20;87H╮\u001b[21;46H│\u001b[21;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mShow refs\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29my\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show refs at HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show refs at current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show refs at other ref... \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H╰\u001b[25;47H─\u001b[25;48H─\u001b[25;49H─\u001b[25;50H─\u001b[25;51H─\u001b[25;52H─\u001b[25;53H─\u001b[25;54H─\u001b[25;55H─\u001b[25;56H─\u001b[25;57H─\u001b[25;58H─\u001b[25"]
-[0.000, "o", ";59H─\u001b[25;60H─\u001b[25;61H─\u001b[25;62H─\u001b[25;63H─\u001b[25;64H─\u001b[25;65H─\u001b[25;66H─\u001b[25;67H─\u001b[25;68H─\u001b[25;69H─\u001b[25;70H─\u001b[25;71H─\u001b[25;72H─\u001b[25;73H─\u001b[25;74H─\u001b[25;75H─\u001b[25;76H─\u001b[25;77H─\u001b[25;78H─\u001b[25;79H─\u001b[25;80H─\u001b[25;81H─\u001b[25;82H─\u001b[25;83H─\u001b[25;84H─\u001b[25;85H─\u001b[25;86H─\u001b[25;87H╯\u001b[21;47H\u001b[34h\u001b[?25h"]
-[1.507, "o", "\u001b[?25l\u001b[20;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[17B \r\u001b[42;1H[gitlad] Loading refs...\r\u001b[42;1H \r\u001b[42;1H[gitlad] Refreshing refs...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[1;3H \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ "]
-[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n"]
-[0.000, "o", "~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
-[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://refs[/private/tmp/gitlad-demo-repo/] \u001b[1;3H\u001b[34h\u001b[?25h"]
-[0.009, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReferences (at main) \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mBranches (5) \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220"]
-[0.000, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mfeature/clean-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd math utility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mfeature/conflict-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component (will conflict)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;158;59m\u001b[48;2;31;31;40m@\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRemote \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m (\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m/tmp/gitlad-demo-repo-origin\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m) \u001b[0;1m\u000f\u001b[38;2;126;156"]
-[0.000, "o", ";216m\u001b[48;2;31;31;40m(3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mfeature/clean-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd math utility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mfeature/conflict-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component (will conflict)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220"]
-[0.000, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mPress ? for help \u001b[1;3H\u001b[34h\u001b[?25h"]
-[0.009, "o", "\u001b[?25l\r\n\n\n\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \r\n> \u001b[5A\u001b[34h\u001b[?25h"]
-[2.578, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \u001b[5;3H? notes.txt \u001b[6;3H? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b"]
-[0.000, "o", "[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \u001b[8;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js\r\n\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;"]
-[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147"]
-[0.000, "o", ";138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;"]
-[0.000, "o", "186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;"]
-[0.000, "o", "2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b["]
-[0.000, "o", "m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;"]
-[0.000, "o", "31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[26;3H\u001b[34h\u001b[?25h"]
-[0.601, "o", "\u001b[?25l\u001b[1;40r\u001b[H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[2L\u001b[1;42r\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;3H\u001b[34h\u001b[?25h"]
-[0.301, "o", "\u001b[?25l\n\n\n\n\u001b[34h\u001b[?25h"]
-[0.200, "o", "\u001b[?25l\u001b[6B\u001b[34h\u001b[?25h"]
-[0.201, "o", "\u001b[?25l\u001b[7B\u001b[34h\u001b[?25h"]
-[0.201, "o", "\u001b[?25l\u001b[5B\u001b[34h\u001b[?25h"]
-[1.053, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.201, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[1.406, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
-[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
-[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
-[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
-[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[13;46H╭\u001b[13;47H─\u001b[13;48H─\u001b[13;49H─\u001b[13;50H─\u001b[13;51H─\u001b[13;52H─\u001b[13;53H─\u001b[13;54H─\u001b[13;55H─\u001b[13;56H─\u001b[13;57H─\u001b[13;58H─\u001b[13;59H─\u001b[13;60H─\u001b[13;61H─\u001b[13;62H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[13;73H─\u001b[13;74H─\u001b[13;75H─\u001b[13;76H─\u001b[13;77H─\u001b[13;78H─\u001b[13;79H─\u001b[13;80H─\u001b[13;81H─\u001b[13;82H"]
-[0.000, "o", "─\u001b[13;83H─\u001b[13;84H─\u001b[13;85H─\u001b[13;86H─\u001b[13;87H╮\u001b[14;46H│\u001b[14;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;46H│\u001b[15;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-f\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Force operations (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--force\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;46H│\u001b[16;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-d\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Detach HEAD (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m--detach\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;46H│\u001b[17;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Lock after adding (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48"]
-[0.000, "o", ";2;22;22;29m--lock\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;46H│\u001b[18;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCreate new\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mb\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m branch and worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mCommands experiment\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;10"]
-[0.000, "o", "9m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Move worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Delete worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mg\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Visit worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mLock\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Lock worktree "]
-[0.000, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H│\u001b[28;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mu\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Unlock worktree \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;46H│\u001b[29;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mMaintenance\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;46H│\u001b[30;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mp\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Prune stale \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;46H╰\u001b[31;47H─\u001b[31;48H─\u001b[31;49H─\u001b[31;50H─\u001b[31;51H─\u001b[31;52H─\u001b[31;53H─\u001b[31;54H─\u001b[31;55H─\u001b[31;56H─\u001b[31;57H─\u001b[31;58H─\u001b[31;59H─\u001b[31;60H─\u001b[31;61H─\u001b[31;62H─\u001b[31;63H─\u001b[31;64H─\u001b[31;65H─\u001b[31;66H─\u001b[31;67H─\u001b[31;68H─\u001b[31;69H─\u001b[31;70H─\u001b[31;71H─\u001b[31;72H─\u001b[31;73H─\u001b[31;74H─\u001b[31;75H─\u001b[31;76H─\u001b[31;7"]
-[0.000, "o", "7H─\u001b[31;78H─\u001b[31;79H─\u001b[31;80H─\u001b[31;81H─\u001b[31;82H─\u001b[31;83H─\u001b[31;84H─\u001b[31;85H─\u001b[31;86H─\u001b[31;87H╯\u001b[14;47H\u001b[34h\u001b[?25h"]
-[2.598, "o", "\u001b[?25l\u001b[13;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;46H \u001b[15;46H \u001b[16;46H \u001b[17;46H \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;46H \u001b[28;46H \u001b[29;46H "]
-[0.000, "o", " \u001b[30;46H \u001b[31;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mers\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38"]
-[0.000, "o", ";2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js "]
-[0.000, "o", " \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/co"]
-[0.000, "o", "mponents/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;"]
-[0.000, "o", "215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40"]
-[0.000, "o", "m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H "]
-[0.000, "o", " \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23"]
-[0.000, "o", "a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38"]
-[0.000, "o", ";2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m"]
-[0.000, "o", "\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[25;3H\u001b[34h\u001b[?25h"]
+[0.000, "o", " \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;1"]
+[0.000, "o", "02m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;3"]
+[0.000, "o", "1;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b"]
+[0.000, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
[1.105, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;"]
[0.000, "o", "216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31"]
[0.000, "o", ";40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;"]
[0.000, "o", "215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;18"]
-[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
-[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[12;46H╭\u001b[12;47H─\u001b[12;48H─\u001b[12;49H─\u001b[12;50H─\u001b[12;51H─\u001b[12;52H─\u001b[12;53H─\u001b[12;54H─\u001b[12;55H─\u001b[12;56H─\u001b[12;57H─\u001b[12;58H─\u001b[12;59H─\u001b[12;60H─\u001b[12;61H─\u001b[12;62H─\u001b[12;63H─\u001b[12;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Log \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[12;70H─\u001b[12;71H─\u001b[12;72H─\u001b[12;73H─\u001b[12;74H─\u001b[12;75H─\u001b[12;76H─\u001b[12;77H─\u001b[1"]
+[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105"]
+[0.000, "o", "m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[12;46H╭\u001b[12;47H─\u001b[12;48H─\u001b[12;49H─\u001b[12;50H─\u001b[12;51H─\u001b[12;52H─\u001b[12;53H─\u001b[12;54H─\u001b[12;55H─\u001b[12;56H─\u001b[12;57H─\u001b[12;58H─\u001b[12;59H─\u001b[12;60H─\u001b[12;61H─\u001b[12;62H─\u001b[12;63H─\u001b[12;64H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Log \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m─\u001b[12;70H─\u001b[12;71H─\u001b[12;72H─\u001b[12;73H─\u001b[12;74H─\u001b[12;75H─\u001b[12;76H─\u001b[12;77H─\u001b[1"]
[0.000, "o", "2;78H─\u001b[12;79H─\u001b[12;80H─\u001b[12;81H─\u001b[12;82H─\u001b[12;83H─\u001b[12;84H─\u001b[12;85H─\u001b[12;86H─\u001b[12;87H╮\u001b[13;46H│\u001b[13;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mArguments\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[14;46H│\u001b[14;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m All branches (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----all\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[15;46H│\u001b[15;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-m\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Only merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[16;46H│\u001b[16;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;22;22;29m-M\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m "]
[0.000, "o", "No merges (\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;22;22;29m----no-merges\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m) \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[17;46H│\u001b[17;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Limit \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--limit=256)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[18;46H│\u001b[18;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=a\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Author \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--author=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=s\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Since \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--since=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84"]
-[0.000, "o", ";84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=u\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Until \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--until=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mLog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log other branch "]
+[0.001, "o", ";84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29m=u\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Until \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;22;22;29m(--until=)\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mLog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log other branch "]
[0.000, "o", " \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mh\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mL\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Log all branches \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mReflog\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H│\u001b[28;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mr\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reflog current branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;46H│\u001b[29;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mO\u001b[m\u000f\u001b[38;2;200;192;147"]
[0.000, "o", "m\u001b[48;2;22;22;29m Reflog other ref \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;46H│\u001b[30;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mH\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reflog HEAD \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;46H│\u001b[31;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mToggle\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;46H│\u001b[32;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mt\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Show tags in refs \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;46H╰\u001b[33;47H─\u001b[33;48H─\u001b[33;49H─\u001b[33;50H─\u001b[33;51H─\u001b[33;52H─\u001b[33;53H─\u001b[33;54H─\u001b[33;55H─\u001b[33;56H─\u001b[33;57H─\u001b[33;58H─\u001b[33;59H─\u001b[33;60H─\u001b[33;61H─\u001b[33;62H─\u001b[33;63H─\u001b[33;64H─\u001b[33;65H─\u001b[33;66H─\u001b[33;67H─\u001b[33;68H─\u001b[33;69H─\u001b[33;70H─\u001b[33;71H─\u001b[33;72H─\u001b[33;73H─\u001b"]
[0.000, "o", "[33;74H─\u001b[33;75H─\u001b[33;76H─\u001b[33;77H─\u001b[33;78H─\u001b[33;79H─\u001b[33;80H─\u001b[33;81H─\u001b[33;82H─\u001b[33;83H─\u001b[33;84H─\u001b[33;85H─\u001b[33;86H─\u001b[33;87H╯\u001b[13;47H\u001b[34h\u001b[?25h"]
[1.500, "o", "\u001b[?25l\u001b[12;46H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;46H \u001b[14;46H \u001b[15;46H \u001b[16;46H \u001b[17;46H \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;46H \u001b[28;46H "]
-[0.000, "o", " \u001b[29;46H \u001b[30;46H \u001b[31;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mers\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;46H \u001b[33;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mies\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[9B \r\u001b[42;1H[gitlad] Fetching log...\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt "]
-[0.000, "o", " \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;"]
-[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H "]
-[0.000, "o", " \u001b[18;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js "]
-[0.000, "o", " \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[26;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m"]
-[0.000, "o", "\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;"]
-[0.000, "o", "152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b"]
-[0.000, "o", "[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b"]
-[0.000, "o", "[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[25;3H\u001b[34h\u001b[?25h"]
-[0.012, "o", "\u001b[?25l\u001b[23A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 49 seconds ago\u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 49 seconds ago\u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 49 seconds ago\r"]
-[0.000, "o", "\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 50 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 50 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
-[0.001, "o", "[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;3"]
-[0.000, "o", "1;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 51 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md26b8bf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 52 seconds ago\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ "]
+[0.000, "o", " \u001b[29;46H \u001b[30;46H \u001b[31;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mers\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;46H \u001b[33;46H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mies\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[9B \r\u001b[42;1H[gitlad] Fetching log...\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H? assets/new-image.bin \u001b[7;3H? notes.txt "]
+[0.000, "o", " \u001b[8;3H? src/components/Dropdown.js \u001b[9;3H? src/utils/cache.js \u001b[10;3H \u001b[11;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;3H○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \u001b[13;3H○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;3H○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[15;3H○\u001b[15;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[16;3H○\u001b[16;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[17;3H \u001b[18;3H\u001b[0;1"]
+[0.000, "o", "m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \u001b[20;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[20;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[21;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[21;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js "]
+[0.000, "o", " \u001b[22;3H \u001b[23;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2"]
+[0.000, "o", "6;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;3H \u001b[28;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;3H \u001b[30;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;3H\u001b[m\u000f\u001b[38;2;255;160;102m"]
+[0.000, "o", "\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[32;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[33;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[34;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;3"]
+[0.000, "o", "1;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[35;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;18"]
+[0.000, "o", "6m\u001b[48;2;31;31;40m \u001b[38;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b["]
+[0.000, "o", "48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \u001b[28;3H\u001b[34h\u001b[?25h"]
+[0.037, "o", "\u001b[?25l\u001b[26A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 30 seconds ago\u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 31 seconds ago\u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 31 seconds ago\r"]
+[0.000, "o", "\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 31 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
+[0.000, "o", "[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 32 seconds ago\u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;3"]
+[0.000, "o", "1;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 33 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 33 seconds ago\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3b8c2a8\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 33 seconds ago\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mCommits in main (-256) (11) \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mlog[/private/tmp/gitlad-demo-repo/] \u001b[2;3H\u001b[34h\u001b[?25h"]
-[4.391, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
-[0.011, "o", "\u001b[?25l\u001b[59C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m54\u001b[3;53H54\u001b[4;62H54\u001b[5;65H5\u001b[6;67H5\u001b[7;60H6\u001b[8;51H6\u001b[9;69H6\u001b[10;64H6\u001b[11;68H6\u001b[12;67H7\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m512\u001b[2;3H\u001b[34h\u001b[?25h"]
-[1.392, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
-[0.010, "o", "\u001b[?25l\u001b[60C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m5\u001b[3;54H5\u001b[4;63H5\u001b[5;65H6\u001b[6;67H6\u001b[7;60H7\u001b[8;51H7\u001b[9;69H7\u001b[10;64H7\u001b[11;68H7\u001b[12;67H8\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m256\u001b[2;3H\u001b[34h\u001b[?25h"]
-[1.043, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[0.201, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[4.366, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
+[0.035, "o", "\u001b[?25l\u001b[60C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m5\u001b[3;54H6\u001b[4;63H6\u001b[5;65H6\u001b[6;67H7\u001b[7;60H7\u001b[8;51H7\u001b[9;69H7\u001b[10;64H8\u001b[11;68H8\u001b[12;67H8\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m512\u001b[2;3H\u001b[34h\u001b[?25h"]
+[1.367, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Refreshing log...\u001b[2;3H\u001b[34h\u001b[?25h"]
+[0.036, "o", "\u001b[?25l\u001b[60C\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m6\u001b[3;54H7\u001b[4;63H7\u001b[5;65H7\u001b[6;67H8\u001b[7;60H8\u001b[8;51H8\u001b[9;69H8\u001b[10;64H9\u001b[11;68H9\u001b[12;67H9\u001b[1;19H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m256\u001b[2;3H\u001b[34h\u001b[?25h"]
+[1.015, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[0.200, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
[0.201, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
-[1.204, "o", "\u001b[?25l"]
-[0.008, "o", "\u001b[3A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
-[0.000, "o", "31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago "]
-[0.000, "o", " \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;10"]
-[0.000, "o", "8m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md26b8bf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial pr"]
-[0.000, "o", "oject setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 58 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[1.207, "o", "\u001b[?25l"]
+[0.030, "o", "\u001b[3A\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 36 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.000, "o", "31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago "]
+[0.000, "o", " \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;10"]
+[0.000, "o", "8m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3b8c2a8\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial pr"]
+[0.000, "o", "oject setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://log[/private/tmp/gitlad-demo-repo/] "]
@@ -348,13 +241,13 @@
[0.000, "o", "m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m elsewhere \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;28H│\u001b[27;29H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mRebase\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;28H│\u001b[28;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mi\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m interactively \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[29;28H│\u001b[29;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ms\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m a subset \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[30;28H│\u001b[30;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to"]
[0.000, "o", " modify a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[31;28H│\u001b[31;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mw\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to reword a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[32;28H│\u001b[32;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mk\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to remove a commit \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[33;28H│\u001b[33;29H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mf\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m to autosquash \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[34;28H╰\u001b[34;29H─\u001b[34;30H─\u001b[34;31H─\u001b[34;32H─\u001b[34;33H─\u001b[34;34H─\u001b[34;35H─\u001b[34;36H─\u001b[34;37H─\u001b[34;38H─\u001b[34;39H─\u001b[34;40H─\u001b["]
[0.000, "o", "34;41H─\u001b[34;42H─\u001b[34;43H─\u001b[34;44H─\u001b[34;45H─\u001b[34;46H─\u001b[34;47H─\u001b[34;48H─\u001b[34;49H─\u001b[34;50H─\u001b[34;51H─\u001b[34;52H─\u001b[34;53H─\u001b[34;54H─\u001b[34;55H─\u001b[34;56H─\u001b[34;57H─\u001b[34;58H─\u001b[34;59H─\u001b[34;60H─\u001b[34;61H─\u001b[34;62H─\u001b[34;63H─\u001b[34;64H─\u001b[34;65H─\u001b[34;66H─\u001b[34;67H─\u001b[34;68H─\u001b[34;69H─\u001b[34;70H─\u001b[34;71H─\u001b[34;72H─\u001b[34;73H─\u001b[34;74H─\u001b[34;75H─\u001b[34;76H─\u001b[34;77H─\u001b[34;78H─\u001b[34;79H─\u001b[34;80H─\u001b[34;81H─\u001b[34;82H─\u001b[34;83H─\u001b[34;84H─\u001b[34;85H─\u001b[34;86H─\u001b[34;87H─\u001b[34;88H─\u001b[34;89H─\u001b[34;90H─\u001b[34;91H─\u001b[34;92H─\u001b[34;93H─\u001b[34;94H─\u001b[34;95H─\u001b[34;96H─\u001b[34;97H─\u001b[34;98H─\u001b[34;99H─\u001b[34;100H─\u001b[34;101H─\u001b[34;102H─\u001b[34;103H─\u001b[34;104H─\u001b[34;105H╯\u001b[12;29H\u001b[34h\u001b[?25h"]
-[3.093, "o", "\u001b[?25l\u001b[11;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[12;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40metup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 58 seconds ago \u001b[13;28H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \u001b[14;28H \u001b[15;28H \u001b[16;28H \u001b[17;28H \u001b[18;28H "]
+[3.066, "o", "\u001b[?25l\u001b[11;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[12;28H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40metup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[13;28H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \u001b[14;28H \u001b[15;28H \u001b[16;28H \u001b[17;28H \u001b[18;28H "]
[0.000, "o", " \u001b[19;28H \u001b[20;28H \u001b[21;28H \u001b[22;28H \u001b[23;28H \u001b[24;28H \u001b[25;28H \u001b[26;28H \u001b[27;28H \u001b[28;28H \u001b[29;28H \u001b[30;28H "]
-[0.000, "o", " \u001b[31;28H \u001b[32;28H \u001b[33;28H \u001b[34;28H \u001b[2;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;1"]
-[0.000, "o", "86m\u001b[48;2;31;31;40m 55 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 55 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102"]
-[0.000, "o", "m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 56 seconds ago \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;3"]
-[0.000, "o", "1;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd"]
-[0.000, "o", " configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 57 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md26b8bf\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 58 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
+[0.000, "o", " \u001b[31;28H \u001b[32;28H \u001b[33;28H \u001b[34;28H \u001b[2;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 36 seconds ago \u001b[3;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;1"]
+[0.000, "o", "86m\u001b[48;2;31;31;40m 37 seconds ago \u001b[4;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[5;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 37 seconds ago \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102"]
+[0.001, "o", "m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[8;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[9;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 38 seconds ago \u001b[10;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[11;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd"]
+[0.000, "o", " configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \u001b[12;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3b8c2a8\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project setup with basic structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m(Test User)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 39 seconds ago \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
@@ -362,36 +255,38 @@
[0.902, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? assets/new-image.bin \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.t"]
[0.000, "o", "xt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \u001b[8;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
[0.000, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b"]
+[0.001, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b"]
[0.000, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;1"]
[0.000, "o", "95;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up au"]
-[0.000, "o", "th middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m"]
-[0.000, "o", "origin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
-[0.000, "o", "31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
-[0.000, "o", "3;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[23;3H\u001b[34h\u001b[?25h"]
-[1.105, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[1;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[2;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[3;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \u001b[4;3H○\u001b[4;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
-[0.000, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[5;3H○\u001b[5;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[8;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186"]
-[0.000, "o", "m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[9;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \u001b[10;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[10;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b["]
-[0.000, "o", "m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[20;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[23;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:30]\u001b[m\u000f\u001b["]
-[0.000, "o", "38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:29]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -512\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(11ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:24]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;"]
-[0.000, "o", "186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main feature/conflict-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(9ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main experiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(8ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main feature/clean-merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(8ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220"]
-[0.000, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main hotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(7ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit cherry -v main main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(6ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit for-each-ref --format=%(refname:short)|||%(objectname:short)|||%(refname)|||%(subject)|||%(HEAD)|||%(up"]
-[0.000, "o", "stream:short) refs/heads refs/remotes refs/tags\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(9ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:12]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit remote -v\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(6ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(3ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215"]
-[0.000, "o", ";186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get pull.rebase\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(4ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(4ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[09:45:08]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(4ms)\u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mhistory \r\u001b[15A\u001b[34h\u001b[?25h"]
-[2.599, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H? assets/new-image.bin "]
-[0.000, "o", " \u001b[5;3H? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
-[0.000, "o", " \u001b[10;3H○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m"]
-[0.000, "o", "> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[15;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;1"]
-[0.000, "o", "86m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b[20;3H "]
-[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[4"]
-[0.000, "o", "8;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;3"]
-[0.000, "o", "1;31;40m8b9932c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9d23a58\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m771f923\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m71fe692\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42"]
-[0.000, "o", ";42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m1525f14\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mca1d1b7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m166d492\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0ebb5a0\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\r\n\u001b[m\u000f\u001b[38;2"]
-[0.000, "o", ";147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma4e0349\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m9cd8c72\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[23;3H\u001b[34h\u001b[?25h"]
-[3.516, "o", "\u001b[?25l\u001b[?2031l\u001b[2 q\u001b[?1002l\u001b[?1006l\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[?1l\u001b>\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
-[0.000, "o", "\u001b[?25l\r\u001b[19B\u001b[?1049l\u001b[34h\u001b[?25h"]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up au"]
+[0.000, "o", "th middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m"]
+[0.000, "o", "origin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[0.000, "o", "31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[0.000, "o", "3;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[26;3H\u001b[34h\u001b[?25h"]
+[1.109, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[1;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[2;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[3;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \u001b[4;3H○\u001b[4;4H \u001b[m\u000f\u001b[38;2;220;215;186m"]
+[0.000, "o", "\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[7;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43"]
+[0.000, "o", ";51;40m●\u001b[8;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[9;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[15;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b"]
+[0.000, "o", "[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main"]
+[0.000, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-demo-repo/] \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:54]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(38ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:53]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -512\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(37ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:48]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit log --format=%x1e%H%x1f%D%x1f%an%x1f%ar%x1f%s%x1f%b -256\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b["]
+[0.000, "o", "m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(36ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get pull.rebase\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(10ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get remote.pushDefault\u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(11ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(11ms)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.pushRemote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(12ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;3"]
+[0.000, "o", "1;31;40mgit config --default --get branch.main.rebase\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(12ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(13ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(15ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:44]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;4"]
+[0.000, "o", "0m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.description\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(30ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:39]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(26ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:43:34]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(19ms)\r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m✓\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m[11:"]
+[0.000, "o", "43:30]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgit config --default --get branch.main.remote\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m(15ms)\u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mhistory \r\u001b[15A\u001b[34h\u001b[?25h"]
+[2.596, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUpdate App component on main\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m[+3/-0]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUntracked (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H? assets/new-image.bin "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? notes.txt \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m? src/components/Dropdown.js \u001b[7;3H? src/utils/cache.js \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnstaged (5)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[10;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m README.md \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[11;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mlib\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[12;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Button.js "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[13;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/config.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m○\u001b[14;4H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/helpers.js \u001b[15;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mStaged (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[17;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mR\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m docs/{API.md => API-REFERENCE.md} \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[18;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/components/Card.js \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m●\u001b[19;4H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m src/utils/validator.js \u001b"]
+[0.000, "o", "[20;3H \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mWorktrees (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;42;55m* \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;3H\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/experiment/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;3H\u001b"]
+[0.000, "o", "[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m/private/tmp/gitlad-demo-repo-wt/hotfix/\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55m> \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mUnmerged into origin/main (3)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (10)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m597fa42\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mWire up auth middleware and formatters\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m85471a7\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd authentication middleware\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m7dd0e30\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mhotfix\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add string formatting utilities\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m4af3e80\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;"]
+[0.000, "o", "152;187;108m\u001b[48;2;31;31;40morigin/main\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Update App component on main\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40md332e90\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mexperiment\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m Add shared library as submodule\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mc3dcd89\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd component tests and test runner\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m0d335cc\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd Python utility scripts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b"]
+[0.001, "o", "[48;2;31;31;40ma3d3a22\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd binary assets: logo, icon, and data file\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m69c7de2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd UI components: Button, Input, Modal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m333b973\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module and logger utility\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40"]
+[0.000, "o", "m \u001b[41;10H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mstatus[/private/tmp/gitlad-demo-repo/]\u001b[26;3H\u001b[34h\u001b[?25h"]
+[3.519, "o", "\u001b[?25l\u001b[?2031l\u001b[2 q\u001b[?1002l\u001b[?1006l\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[?1l\u001b>\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
+[0.001, "o", "\u001b[?25l\r\u001b[16B\u001b[?1049l\u001b[34h\u001b[?25h"]
[0.001, "x", "0"]
diff --git a/docs/demo-forge-v2.cast b/docs/demo-forge-v2.cast
new file mode 100644
index 0000000..6b5e7ff
--- /dev/null
+++ b/docs/demo-forge-v2.cast
@@ -0,0 +1,234 @@
+{"version":2,"width":130,"height":42,"timestamp":1772019908,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/nix/store/ngqf98amj0hv0jhzhz540p03wxjj0chj-bash-interactive-5.3p9/bin/bash"}}
+[0.013, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
+[0.019, "o", "\u001b]11;?\u0007"]
+[0.03, "o", "\u001bP+q4D73\u001b\\"]
+[0.031, "o", "\u001b[?25l\u001b[?2031h\u001b[>4;2m\u001b[m\u000f\u001b[H \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.031, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.031, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.031, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.031, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.031, "o", " \r\n \r\n \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[H \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n "]
+[0.031, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
+[0.031, "o", " \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
+[0.031, "o", " \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNvim is open source and freely distributable\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mhttps://neovim.io/#chat\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ "]
+[0.031, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.031, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.031, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
+[0.112, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
+[1.733, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
+[1.745, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
+[1.8, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-forge-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[1.801, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
+[1.815, "o", "\u001b[?25l"]
+[1.842, "o", "\u001b[34h\u001b[?25h"]
+[1.865, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
+[1.896, "o", "\u001b[?25l"]
+[1.907, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/\u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215"]
+[1.907, "o", ";186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m45e1d3c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3aa5c4e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[1.907, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNothing to commit, working tree clean \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
+[5.039, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/\u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[5.039, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m45e1d3c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3aa5c4e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;3H \u001b[9;3HNothing to co"]
+[5.04, "o", "mmit, working tree clean \u001b[10;3H \u001b[11;3H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ "]
+[5.04, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[5.04, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[5.04, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[5.04, "o", " \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-forge-demo-repo/] \u001b[17;46H╭\u001b[17;47H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Forge (github: actionshrimp/gitlad-demo\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m╮\u001b[18;46H│\u001b[18;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mPull Requests\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m List pull requests \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;1"]
+[5.04, "o", "27;184m\u001b[48;2;22;22;29mv\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m View current branch PR \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Checkout PR branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mActions\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mn\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Create pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Merge pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b"]
+[5.04, "o", "[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mC\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reopen pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Open in browser \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H╰\u001b[28;47H─\u001b[28;48H─\u001b[28;49H─\u001b[28;50H─\u001b[28;51H─\u001b[28;52H─\u001b[28;53H─\u001b[28;54H─\u001b[28;55H─\u001b[28;56H─\u001b[28;57H─\u001b[28;58H─\u001b[28;59H─\u001b[28;60H─\u001b[28;61H─\u001b[28;62H─\u001b[28;63H─\u001b[28;64H─\u001b[28;65H─\u001b[28;66H─\u001b[28;67H─\u001b[28;68H─\u001b[28;69H─\u001b[28;70H─\u001b[28;71H─\u001b[28;72H─\u001b[28;73H─\u001b[28;74H─\u001b[28;75H─\u001b[28;76H─\u001b[28;77H─\u001b[28;78H─\u001b[28;79H─\u001b[28;80H─\u001b[28;81H─\u001b[28;82H─"]
+[5.04, "o", "\u001b[28;83H─\u001b[28;84H─\u001b[28;85H─\u001b[28;86H─\u001b[28;87H╯\u001b[18;47H\u001b[34h\u001b[?25h"]
+[7.546, "o", "\u001b[?25l\u001b[17;46H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H \u001b[26;46H \u001b[27;46H \u001b[28;46H \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[14B \r\u001b[42;1H[gitlad] Refreshing PR list...\u001b[1;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mLoading pull requests... \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ "]
+[7.546, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[7.546, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[7.546, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[7.546, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[7.546, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://pr-li"]
+[7.546, "o", "st[/private/tmp/gitlad-forge-demo-repo/] \u001b[1;3H\u001b[34h\u001b[?25h"]
+[8.093, "o", "\u001b[?25l\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNo pull requests found. \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPull Requests (actionshrimp/gitlad-demo-repo) (0) \u001b[2;3H\u001b[34h\u001b[?25h"]
+[8.205, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] PR list refreshed (1 PRs)\u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMy Pull Requests (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m#2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Add input validation module \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+95\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;48H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m1\u001b[2;3H\u001b[34h\u001b[?25h"]
+[13.94, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[15.051, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[39B \r\u001b[42;1H[gitlad] Refreshing PR #2...\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mLoading PR #2... \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \u001b[41;13H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mdetail[/private/tmp/gitlad-forge-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[15.644, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[41B \r\u001b[42;1H[gitlad] PR #2 refreshed\r\u001b[40A\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m#2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mAdd input validation module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mAuthor: \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m State: \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mOPEN\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mBase: main <- feature/add-validation \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+95\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;"]
+[15.644, "o", "195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mMerge: \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mReady to merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m---\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m## Summary \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[15.644, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mThis PR adds a validation module for input type checking and configuration \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mvalidation. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m### Changes \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- New `src"]
+[15.644, "o", "/validate.lua` with type checks, range validation, and pattern \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mmatching \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- Updated `src/main.lua` to validate config on setup \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- Extended `src/utils.lua` with `map()` and `filter()` functions \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- Comprehensive tests in `tests/validate_test.lua` \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m"]
+[15.644, "o", "\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m## Test plan \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [x] Unit tests for all validation functions \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [x] Config validation integration test \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [ ] Manual testing with edge cases \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55"]
+[15.644, "o", "m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m---\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mComments (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[15.644, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Looks like a solid foundation for validation! A couple of thoughts: \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 1. The `validate_config` function is clean —\u001b[29;49H love that it returns both a \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m boolean and the error list. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 2. Have you considered adding a `validate_schema` function for more c"]
+[15.644, "o", "omplex \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m nested configs? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice work overall. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@act"]
+[15.645, "o", "ionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m One more thing —\u001b[37;21H the `matches_pattern` function uses Lua patterns, not \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m regex. Might be worth adding a note in the docstring so users don't get \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m confused by the difference. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[15.645, "o", " \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPR #2: Add input validation module \u001b[2;3H\u001b[34h\u001b[?25h"]
+[19.293, "o", "\u001b[?25l\u001b[24B\u001b[34h\u001b[?25h"]
+[20.045, "o", "\u001b[?25l\u001b[10B\u001b[34h\u001b[?25h"]
+[20.797, "o", "\u001b[?25l\u001b[2;40r\u001b[2;1H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[3M\u001b[1;42r\u001b[38;1H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReviews (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 45 minutes ago \r\u001b[C\u001b[C\u001b[34h\u001b[?25h"]
+[21.55, "o", "\u001b[?25l\u001b[2;40r\u001b[2;1H\u001b[16M\u001b[1;42r\u001b[25;1H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Good progress! Left a few inline suggestions. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/validate.lua:26\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Consider using `tonumber()` here as a fallback —\u001b[28;55H some callers might \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;21"]
+[21.55, "o", "5;186m\u001b[48;2;31;31;40m pass string representations of numbers. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/main.lua:18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m This error message could be more descriptive. Maybe include which config \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m keys failed validation? "]
+[21.55, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:38\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice addition! But the `map` function signature should probably document \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m that `fn` receives `(value, index)` —\u001b[37;44H it's not obvious from the name \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;"]
+[21.55, "o", "2;220;215;186m\u001b[48;2;31;31;40m alone. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 24 minutes ago \r\u001b[C\u001b[C\u001b[34h\u001b[?25h"]
+[22.553, "o", "\u001b[?25l\u001b[29C5\r\u001b[C\u001b[C\u001b[34h\u001b[?25h"]
+[27.468, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n\n \r\u001b[42;1H[gitlad] Loading PR diff...\u001b[40;3H\u001b[34h\u001b[?25h"]
+[27.52, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//p/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ M main.lua +"]
+[27.52, "o", "12 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m utils.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+36\r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ tests\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate_test.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+29\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[27.52, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11"]
+[27.52, "o", ";36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2"]
+[27.52, "o", ";149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[27.52, "o", "1;31;40m \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;"]
+[27.52, "o", "2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"info\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_ret"]
+[27.52, "o", "ries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m3\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b["]
+[27.52, "o", "48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mend \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m"]
+[27.52, "o", "\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[27.52, "o", "\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[28;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40"]
+[27.52, "o", "mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m10\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;4"]
+[27.52, "o", "2m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[31;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;74;42;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m2\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[32;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[33;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[34;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;"]
+[27.52, "o", "42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[35;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[37;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 27 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m"]
+[27.52, "o", "\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;88H│\u001b[4;88H│\u001b[5;88H│\u001b[6;88H│\u001b[7;88H│\u001b[8;88H│\u001b[9;88H│\u001b[10;88H│\u001b[11;88H│\u001b[12;88H│\u001b[13;88H│\u001b[14;88H│\u001b[15;88H│\u001b[16;88H│\u001b[17;88H│\u001b[18;88H│\u001b[19;88H│\u001b[20;88H│\u001b[21;88H│\u001b[22;88H│\u001b[23;88H│\u001b[24;88H│\u001b[25;88H│\u001b[26;88H│\u001b[27;88H│\u001b[28;88H│\u001b[29;88H│\u001b[30;88H│\u001b[31;88H│\u001b[32;88H│\u001b[33;88H│\u001b[34;88H│\u001b[35;88H│\u001b[36;88H│\u001b[37;88H│\u001b[38;88H│\u001b[39;88H│\u001b[40;88H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[27.52, "o", "validate \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mrequire\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"src.validat\u001b[4;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[3"]
+[27.52, "o", "8;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b["]
+[27.52, "o", "38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m"]
+[27.52, "o", "\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"in\u001b[11;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[12;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m5000\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;"]
+[27.52, "o", "2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[13;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[15;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m errors \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mvalidat\u001b[16;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;1"]
+[27.52, "o", "10m\u001b[48;2;42;74;42mnot\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[17;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42merror\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"Invalid config: \"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[18;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[19;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[4"]
+[27.52, "o", "8;2;31;31;40m \u001b[21;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;"]
+[27.52, "o", "40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;89H\u001b[m"]
+[27.52, "o", "\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[28;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 27 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 29 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i \u001b["]
+[27.52, "o", "m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[31;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[32;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55"]
+[27.52, "o", "m 31 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mis_positive\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mth\u001b[33;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 32 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[34;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 33 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;"]
+[27.52, "o", "2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 34 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 35 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[37;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 36 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 37 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;"]
+[27.52, "o", "40m \u001b[40;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[41;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \r\u001b[39A\u001b[34h\u001b[?25h"]
+[27.94, "o", "\u001b[?25l\u001b[41C\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[3;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[4;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[5;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[6;42H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[7;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[27.94, "o", " opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[8;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[9;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;"]
+[27.94, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[10;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"info\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[11;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_re"]
+[27.94, "o", "tries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m3\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[12;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[13;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[14;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[15;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[16;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[17;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[18;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[19;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mend\u001b[20;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[4"]
+[27.94, "o", "8;2;26;26;42m \u001b[21;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;"]
+[27.94, "o", "42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[25;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[27;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[28;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m0"]
+[27.94, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[30;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;2"]
+[27.94, "o", "10;126;153m\u001b[48;2;74;42;42m10\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[32;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;74;42;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m2\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[33;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[34;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[35;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26"]
+[27.94, "o", ";26;42m~ \u001b[36;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results\u001b[38;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[39;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[3;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;"]
+[27.94, "o", "42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mrequire\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"src.valid\u001b[4;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[5;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[6;94H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;1"]
+[27.94, "o", "71;202m\u001b[48;2;31;31;40m)\u001b[7;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[8;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[9;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2"]
+[27.94, "o", ";31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[10;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[11;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;2"]
+[27.94, "o", "02m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m5000\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[13;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[14;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[15;94H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b"]
+[27.94, "o", "[38;2;220;215;186m\u001b[48;2;42;74;42m errors \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mvalid\u001b[16;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42mnot\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[17;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42merror\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"Invalid config: \"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtab\u001b[18;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;1"]
+[27.94, "o", "27;184m\u001b[48;2;42;74;42mend\u001b[19;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[20;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[20;97H─\u001b[20;98H @actionshrimp: This error messa\u001b[21;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m0 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m"]
+[27.94, "o", "\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[25;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;4"]
+[27.94, "o", "0m()\u001b[27;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[28;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[30;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m29 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;"]
+[27.94, "o", "2;220;215;186m\u001b[48;2;42;74;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42md\u001b[32;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m0 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[33;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b["]
+[27.94, "o", "m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mis_positive\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[34;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[35;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[36;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2"]
+[27.94, "o", ";42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results\u001b[38;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[39;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\u001b[38A\u001b[34h\u001b[?25h"]
+[32.96, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m Files (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\n\n\u001b[34h\u001b[?25h"]
+[34.462, "o", "\u001b[?25l\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m utils.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\u001b[6;1H\u001b[34h\u001b[?25h"]
+[35.983, "o", "\u001b[?25l\u001bM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m main.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+12\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ M utils.lua +18\u001b[2;47H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUtility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;39H"]
+[35.983, "o", "\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mtrim\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[6;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m^%s*(.-)%s*$\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[7;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;39H\u001b[m\u000f\u001b[38;2;84;84;1"]
+[35.983, "o", "09m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;38H\u001b[m\u000f\u001b[38;2;84;84;1"]
+[35.984, "o", "09m\u001b[48;2;42;42;55m10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m sep \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"]+)\"\u001b[12;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;"]
+[35.984, "o", "215;186m\u001b[48;2;31;31;40m part\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[14;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[15;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m14 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m16 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;15"]
+[35.984, "o", "6;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;5"]
+[35.984, "o", "5m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[20;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[21;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[22;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m21 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;3"]
+[35.984, "o", "1;40m \u001b[23;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[25;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[26;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[27;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[28;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[29;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[30;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;4"]
+[35.984, "o", "2m~ \u001b[31;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[32;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[36;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[37;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[38;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[39;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[40;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;99H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[4"]
+[35.984, "o", "8;2;31;31;40mUtility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;96H \u001b[5;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mtrim\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[6;96H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mmatch\u001b[m\u000f\u001b["]
+[35.984, "o", "38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m^%s*(.-)%s*$\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[7;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;98H \u001b[9;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;98H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m"]
+[35.984, "o", " \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;98H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m sep\u001b[12;96H \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;98H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend"]
+[35.984, "o", "\u001b[14;96H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[15;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;96H \u001b[17;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;96H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v "]
+[35.984, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;96H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[20;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;90H\u001b[m\u000f\u001b[38;2;84;84;109m"]
+[35.984, "o", "\u001b[48;2;42;42;55m20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[22;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mmap\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[25;91H\u001b"]
+[35.984, "o", "[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[26;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;91H\u001b[m\u000f\u001b[38;2;84;84;109"]
+[35.984, "o", "m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mi\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[28;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[29;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[30;91H\u001b[m"]
+[35.984, "o", "\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[31;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[32;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfilter\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[33;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38"]
+[35.984, "o", ";2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[34;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;"]
+[35.984, "o", "42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[36;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresult\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[37;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[38;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74"]
+[35.984, "o", ";42m \u001b[39;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[40;96H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[40;97H─\u001b[40;98H @actionshrimp: Nice addition! B\r\u001b[34A\u001b[34h\u001b[?25h"]
+[36.771, "o", "\u001b[?25l\u001b[4A\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m Files (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m main.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+12\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ M utils.lua +18 \r\n\u001b[m\u000f\u001b[38;2;220;215;186m"]
+[36.772, "o", "\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+36\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ tests\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate_test.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+29\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[36.772, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[2;44H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Utility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b"]
+[36.772, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;44H \u001b[5;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mtrim\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;44H \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m^"]
+[36.772, "o", "%s*(.-)%s*$\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;44H \u001b[9;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[36.772, "o", "31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"]+)\"\u001b[12;44H\u001b[m\u000f\u001b[38;2;220;215;186"]
+[36.772, "o", "m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;44H \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;44H \u001b[17;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;3"]
+[36.772, "o", "1;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m_\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31"]
+[36.772, "o", ";40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;44H \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mr"]
+[36.772, "o", "eturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;44H \u001b[24;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[25;44H~ \u001b[26;44H~ \u001b[27;44H~ \u001b[28;44H~ \u001b[29;44H~ \u001b[30;44H~ \u001b[31;44H~ \u001b[32;44H~ \u001b[33;44H~ \u001b[34;44H~ \u001b[35;44H~ \u001b[36;44H~ "]
+[36.772, "o", " \u001b[37;44H~ \u001b[38;44H~ \u001b[39;44H~ \u001b[40;44H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;37H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[2;44H\u001b[34h\u001b[?25h"]
+[38.769, "o", "\u001b[?25l\u001b[37B\u001b[34h\u001b[?25h"]
+[40.471, "o", "\u001b[?25l\u001b[40;96H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[40;97H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;44H\u001b[34h\u001b[?25h"]
+[42.476, "o", "\u001b[?25l\u001b[36;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[39;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[40;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m│\u001b[36;97H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m"]
+[42.476, "o", "Nice addition! But the `map` func\u001b[37;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m└\u001b[37;97H─\u001b[37;98H─\u001b[37;99H─\u001b[37;100H─\u001b[37;101H─\u001b[37;102H─\u001b[37;103H─\u001b[37;104H─\u001b[37;105H─\u001b[37;106H─\u001b[37;107H─\u001b[37;108H─\u001b[37;109H─\u001b[37;110H─\u001b[37;111H─\u001b[37;112H─\u001b[37;113H─\u001b[37;114H─\u001b[37;115H─\u001b[37;116H─\u001b[37;117H─\u001b[37;118H─\u001b[37;119H─\u001b[37;120H─\u001b[37;121H─\u001b[37;122H─\u001b[37;123H─\u001b[37;124H─\u001b[37;125H─\u001b[37;126H─\u001b[37;127H─\u001b[37;128H─\u001b[37;129H─\u001b[37;130H─\u001b[38;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 39 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[39;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 40 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[40;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 41 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220"]
+[42.476, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[2;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b["]
+[42.476, "o", "48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m sep\u001b[7;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mins"]
+[42.476, "o", "ert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[10;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[3m\u001b"]
+[42.476, "o", "[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;2"]
+[42.476, "o", "20;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;"]
+[42.476, "o", "2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mmap\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[20;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 "]
+[42.476, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[21;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[22;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[38;2;220"]
+[42.477, "o", ";215;186m\u001b[48;2;42;74;42m result\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mi\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[23;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 27 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[24;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[25;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;5"]
+[42.477, "o", "5m 29 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[26;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 31 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfilter\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[28;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 32 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b["]
+[42.477, "o", "48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[29;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 33 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[30;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 34 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[3"]
+[42.477, "o", "8;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[31;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 35 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresult\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[32;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 36 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[33;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 37 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[42.477, "o", "42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[34;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[35;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[35;97H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215"]
+[42.477, "o", ";186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;3"]
+[42.477, "o", "1;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"]+)\"\u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b"]
+[42.477, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[42.477, "o", "31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m_\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;1"]
+[42.477, "o", "84m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;"]
+[42.477, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[4"]
+[42.477, "o", "8;2;26;26;42m~ \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[21;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[22;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[23;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[24;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[25;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[26;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[27;37H\u001b[m\u000f\u001b[38;2;84;"]
+[42.477, "o", "84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[28;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[29;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[30;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[31;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[32;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[33;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[34;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ "]
+[42.477, "o", " \u001b[35;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;44H\u001b[34h\u001b[?25h"]
+[44.176, "o", "\u001b[?25l\u001b[35;114H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m6\u001b[40;44H\u001b[34h\u001b[?25h"]
+[46.177, "o", "\u001b[?25l\u001b[6A\u001b[34h\u001b[?25h"]
+[47.679, "o", "\u001b[?25l\u001b[6B\u001b[34h\u001b[?25h"]
+[48.804, "o", "\u001b[?25l\u001b[1;16H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m g//COMMENT_EDITMSG \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\n \u001b[3;37H \u001b[4;37H\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReview comment on src/utils.lua:23\u001b[5;37H\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPress C-c C-c to submit, C-c C-k to abort\u001b[6;37H\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mLines starting with '#' will be ignored\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[8;37H~ \u001b[9;37H~ \u001b[10;37H~ \u001b[11;37H~ \u001b[12;37H~ \u001b[13;37H~ "]
+[48.804, "o", " \u001b[14;37H~ \u001b[15;37H~ \u001b[16;37H~ \u001b[17;37H~ \u001b[18;37H~ \u001b[19;37H~ \u001b[20;37H~ \u001b[21;37H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://COMMENT_EDITMSG \u001b[22;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[23;44H~ \u001b[24;44H~ \u001b[25;44H~ \u001b[26;44H~ \u001b[27;44H~ \u001b[28;44H~ \u001b[29;44H~ \u001b[30;44H~ "]
+[48.804, "o", " \u001b[31;44H~ \u001b[32;44H~ \u001b[33;44H~ \u001b[34;44H~ \u001b[35;44H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[39;44H~ \u001b[40;44H\u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] "]
+[48.804, "o", " \u001b[2;37H\u001b[34h\u001b[?25h"]
+[50.285, "o", "\u001b[?25l\u001b[1;17H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m+ g//COMMENT_EDITMSG \u001b[2;37H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mShould we add a nil guard here?\u001b[21;62H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[+]\u001b[2 q\u001b[2;67H\u001b[34h\u001b[?25h"]
+[52.293, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Submitting review comment...\u001b[1;16H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;2"]
+[52.293, "o", "6;26;42m~ \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m"]
+[52.293, "o", "\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;37"]
+[52.293, "o", "H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[21;45H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 25 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m│\u001b[22;45H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mShould we add a nil guard here?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m└\u001b[23;45H─\u001b[23;46H─\u001b[23;47H─\u001b[23;48H─\u001b[23;49H─\u001b[23;50H─\u001b[23;51H─\u001b[23;52H─\u001b[23;53H─\u001b[23;54H─\u001b[23;55H─\u001b[23;56H─\u001b[23;57H─\u001b[23;58H─\u001b[23;59H─\u001b[23;60H─\u001b[23;61H─\u001b[23;62H─\u001b[23;63H─\u001b[23;64H─\u001b[23;65H─\u001b[23;66H─\u001b[23;67H─\u001b[23;68H─\u001b[23;69H─\u001b[23;70H─\u001b[23;71H─\u001b[23;72H─\u001b[23;73H─\u001b[23;74H─\u001b[23;75H─\u001b[23;76H─\u001b[23;77H─\u001b[23;78H─\u001b[23;79H─\u001b[23;80H─\u001b[23;81H─\u001b[23;82H─\u001b[23;83H─\u001b[23;84H"]
+[52.293, "o", "─\u001b[23;85H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[25;37H~ \u001b[26;37H~ \u001b[27;37H~ \u001b[28;37H~ \u001b[29;37H~ \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37H~ "]
+[52.293, "o", " \u001b[40;37H~ \u001b[41;37H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[2;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m26 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mi\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[3;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m27 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[4;90H\u001b[m\u000f\u001b[38;2;84;"]
+[52.294, "o", "84;109m\u001b[48;2;42;42;55m28 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[5;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m29 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[6;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[7;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m31 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfilter\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[52.294, "o", " \u001b[8;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m32 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[9;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m33 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[10;90H\u001b[m\u000f"]
+[52.294, "o", "\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m34 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[11;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m35 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresult\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[12;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m36 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[52.294, "o", "48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[13;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m37 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[14;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[15;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[15;97H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 46 minutes ago\u001b[16;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m│\u001b[16;97H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNice addition! But the `map` func\u001b[17;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;3"]
+[52.294, "o", "1;31;40m└\u001b[17;97H─\u001b[17;98H─\u001b[17;99H─\u001b[17;100H─\u001b[17;101H─\u001b[17;102H─\u001b[17;103H─\u001b[17;104H─\u001b[17;105H─\u001b[17;106H─\u001b[17;107H─\u001b[17;108H─\u001b[17;109H─\u001b[17;110H─\u001b[17;111H─\u001b[17;112H─\u001b[17;113H─\u001b[17;114H─\u001b[17;115H─\u001b[17;116H─\u001b[17;117H─\u001b[17;118H─\u001b[17;119H─\u001b[17;120H─\u001b[17;121H─\u001b[17;122H─\u001b[17;123H─\u001b[17;124H─\u001b[17;125H─\u001b[17;126H─\u001b[17;127H─\u001b[17;128H─\u001b[17;129H─\u001b[17;130H─\u001b[18;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m39 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[19;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m40 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[20;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26"]
+[52.294, "o", ";26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[25;89H~ \u001b[26;89H~ \u001b[27;89H~ \u001b[28;89H~ \u001b[29;89H~ \u001b[30;89H~ \u001b[31;89H~ \u001b[32;89H~ \u001b[33;89H~ \u001b[34;89H~ \u001b[35;89H~ "]
+[52.294, "o", " \u001b[36;89H~ \u001b[37;89H~ \u001b[38;89H~ \u001b[39;89H~ \u001b[40;89H~ \u001b[20;44H\u001b[34h\u001b[?25h"]
+[53.007, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[22B \r\u001b[42;1H[gitlad] Review comment added\u001b[20;44H\u001b[34h\u001b[?25h"]
+[53.54, "o", "\u001b[?25l\u001b[4A\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[17;44H~ \u001b[18;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[19;45H─\u001b[19;46H @actionshrimp: Should we add a nil guard\u001b[20;44H─\u001b[20;45H─\u001b[20;46H @actionshrimp: Should we add a nil guard\u001b[21;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[22;37H~ \u001b[23;37H~ \u001b[15;96H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[15;97H─\u001b[15;98H @actionshrimp: Nice addition! B\u001b[16;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m"]
+[53.54, "o", "\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[17;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m40 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[18;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;96H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[22;89H~ \u001b[23;89H~ \u001b[18;44H\u001b[34h\u001b[?25h"]
+[55.402, "o", "\u001b[?25l\r\u001b[16A\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [x] Config validation integration test \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [ ] Manual testing with edge cases \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m---\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mComments (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[55.402, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Looks like a solid foundation for validation! A couple of thoughts: \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 1. The `validate_config` func"]
+[55.402, "o", "tion is clean —\u001b[10;49H love that it returns both a \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m boolean and the error list. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 2. Have you considered adding a `validate_schema` function for more complex \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m nested configs? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;3"]
+[55.402, "o", "1;40m Nice work overall. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m One more thing —\u001b[18;21H the `matches_pattern` function uses Lua patterns, not \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m regex. "]
+[55.402, "o", "Might be worth adding a note in the docstring so users don't get \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m confused by the difference. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReviews (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;16"]
+[55.402, "o", "9m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 45 minutes ago \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Good progress! Left a few inline suggestions. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/validate.lua:26\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[55.402, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Consider using `tonumber()` here as a fallback —\u001b[28;55H some callers might \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m pass string representations of numbers. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/main.lua:18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186"]
+[55.402, "o", "m\u001b[48;2;31;31;40m This error message could be more descriptive. Maybe include which config \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m keys failed validation? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:38\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice addition! But the `map` function signature should probably document "]
+[55.402, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m that `fn` receives `(value, index)` —\u001b[37;44H it's not obvious from the name \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m alone. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 25 minutes ago "]
+[55.402, "o", " \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPR #2: Add input validation module \r\u001b[40B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://pr-detail[/private/tmp/gitlad-forge-demo-repo/] \u001b[40;3H\u001b[34h\u001b[?25h"]
+[56.792, "o", "\u001b[?25l\u001b[38A\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMy Pull Requests (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m#2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Add input validation module \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+95\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ "]
+[56.792, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[56.792, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[56.792, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r"]
+[56.793, "o", "\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[56.793, "o", " \r\n~ \r\n~ \u001b[1;2H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mull Requests (actionshrimp/gitlad-demo-repo) (1)\u001b[41;13H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mlist[/private/tmp/gitlad-forge-demo-repo/] \u001b[3;3H\u001b[34h\u001b[?25h"]
+[58.193, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001bM \u001b[3;5H\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Looks like a solid foundation for validation! A couple of thoughts: \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 1. The `validate_config` function is clean —\u001b[6;49H love that it returns both a \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[58.193, "o", "48;2;31;31;40m boolean and the error list. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 2. Have you considered adding a `validate_schema` function for more complex \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m nested configs? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice work overall. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m "]
+[58.193, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m One more thing —\u001b[14;21H the `matches_pattern` function uses Lua patterns, not \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m regex. Might be worth adding a note in the docstring so users don't get \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;22"]
+[58.193, "o", "0;215;186m\u001b[48;2;31;31;40m confused by the difference. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReviews (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[58.193, "o", "3;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 45 minutes ago \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Good progress! Left a few inline suggestions. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/validate.lua:26\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Consider using `tonumber()` here as a fallback —\u001b[24;55H"]
+[58.193, "o", " some callers might \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m pass string representations of numbers. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/main.lua:18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m This error message could be more descriptive. Maybe include which config \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;"]
+[58.193, "o", "2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m keys failed validation? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:38\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice addition! But the `map` function signature should probably document \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m that `fn` receives `(value, index)` —\u001b[33;44H it"]
+[58.193, "o", "'s not obvious from the name \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m alone. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 25 minutes ago \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[58.193, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:23\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Should we add a nil guard here? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;2H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mR #2: Add input validation module \u001b[41;13H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mdetail[/private/tmp/gitlad-forge-demo-repo/]\u001b[36;3H\u001b[34h\u001b[?25h"]
+[62.522, "o", "\u001b[?25l\u001b[?2031l\u001b[2 q\u001b[?1002l\u001b[?1006l\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[?1l\u001b>\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
+[62.522, "o", "\u001b[?25l\r\u001b[6B\u001b[?1049l\u001b[34h\u001b[?25h"]
+[62.523, "x", "0"]
diff --git a/docs/demo-forge.cast b/docs/demo-forge.cast
new file mode 100644
index 0000000..fdd674d
--- /dev/null
+++ b/docs/demo-forge.cast
@@ -0,0 +1,234 @@
+{"version":3,"term":{"cols":130,"rows":42,"type":"tmux-256color","version":"tmux 3.6a"},"timestamp":1772019908,"command":"nvim -u '/Users/dave/dev/gitlad.nvim/main/scripts/demo-init.lua'","env":{"SHELL":"/nix/store/ngqf98amj0hv0jhzhz540p03wxjj0chj-bash-interactive-5.3p9/bin/bash"}}
+[0.013, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[?2004h\u001b[?2026$p\u001b[?2027$p\u001b[?2031$p\u001b[?2048$p\u001b[?u\u001b[c\u001b[34h\u001b[?25h"]
+[0.006, "o", "\u001b]11;?\u0007"]
+[0.011, "o", "\u001bP+q4D73\u001b\\"]
+[0.001, "o", "\u001b[?25l\u001b[?2031h\u001b[>4;2m\u001b[m\u000f\u001b[H \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n "]
+[0.000, "o", " \r\n \r\n \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[H \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n "]
+[0.000, "o", " \u001b[15;60H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[17;44HNvim is open source and freely distributable\u001b[18;54Hhttps://neovim.io/#chat\u001b[20;43Htype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[21;43Htype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[22;43Htype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[23;43Htype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[25;42Htype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[27;51HHelp poor children in Uganda!\u001b[28;43Htype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[2 q\u001b[2 q\u001b[?1002h\u001b[?1006h\u001b[H "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNVIM v0.11.6\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNvim is open source and freely distributable\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mhttps://neovim.io/#chat\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help nvim\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m if you are new! \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :checkhealth\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to optimize Nvim\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :q\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to exit \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for help \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.000, "o", "31;40mtype :help news\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m to see changes in v0.11\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mHelp poor children in Uganda!\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtype :help Kuwasha\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;31;31;40m\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m for information \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[No Name] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n \u001b[H\u001b[34h\u001b[?25h"]
+[0.081, "o", "\u001b[?25l\u001b[?1004h\u001b[34h\u001b[?25h"]
+[1.621, "o", "\u001b[?25l\u001b[41B:Gitlad\u001b[2 q\u001b[?1002l\u001b[?1006l\r\u001b[42;1H\u001b[34h\u001b[?25h"]
+[0.012, "o", "\u001b[?25l\u001b[2 q\u001b[?1002h\u001b[?1006h"]
+[0.055, "o", "\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠋ Refreshing...\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m\u001b[15;60H \u001b[17;44H \u001b[18;54H \u001b[20;43H \u001b[21;43H \u001b[22;43H \u001b[23;43H \u001b[25;42H \u001b[27;51H \u001b[28;43H \r\u001b[13B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-forge-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[0.001, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;101;133;148m\u001b[48;2;42;42;42m⠙\b\u001b[34h\u001b[?25h"]
+[0.014, "o", "\u001b[?25l"]
+[0.027, "o", "\u001b[34h\u001b[?25h"]
+[0.023, "o", "\u001b[?25l⠹\b\u001b[34h\u001b[?25h"]
+[0.031, "o", "\u001b[?25l"]
+[0.011, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;42m·\u001b[1;4H Idle\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/\u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215"]
+[0.000, "o", ";186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;42;42;55mv \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m45e1d3c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3aa5c4e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNothing to commit, working tree clean \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[34h\u001b[?25h"]
+[3.132, "o", "\u001b[?25l\u001b[1;9H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;42;42m \u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mHead:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMerge:\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40morigin/\u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;31;31;40mmain\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;3H "]
+[0.000, "o", " \u001b[5;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mRecent commits (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m45e1d3c\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mAdd configuration module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;3H\u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m3aa5c4e\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mInitial project structure\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;3H \u001b[9;3HNothing to co"]
+[0.001, "o", "mmit, working tree clean \u001b[10;3H \u001b[11;3H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mPress ? for help\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29mgitlad://status[/private/tmp/gitlad-forge-demo-repo/] \u001b[17;46H╭\u001b[17;47H\u001b[0;1m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m Forge (github: actionshrimp/gitlad-demo\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m╮\u001b[18;46H│\u001b[18;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mPull Requests\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[19;46H│\u001b[19;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29ml\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m List pull requests \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[20;46H│\u001b[20;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;1"]
+[0.000, "o", "27;184m\u001b[48;2;22;22;29mv\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m View current branch PR \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[21;46H│\u001b[21;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mc\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Checkout PR branch \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[22;46H│\u001b[22;47H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;22;22;29mActions\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[23;46H│\u001b[23;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mn\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Create pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[24;46H│\u001b[24;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mm\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Merge pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[25;46H│\u001b[25;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b"]
+[0.000, "o", "[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mC\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Close pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[26;46H│\u001b[26;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mR\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Reopen pull request \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[27;46H│\u001b[27;47H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;22;22;29mo\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m Open in browser \u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m│\u001b[28;46H╰\u001b[28;47H─\u001b[28;48H─\u001b[28;49H─\u001b[28;50H─\u001b[28;51H─\u001b[28;52H─\u001b[28;53H─\u001b[28;54H─\u001b[28;55H─\u001b[28;56H─\u001b[28;57H─\u001b[28;58H─\u001b[28;59H─\u001b[28;60H─\u001b[28;61H─\u001b[28;62H─\u001b[28;63H─\u001b[28;64H─\u001b[28;65H─\u001b[28;66H─\u001b[28;67H─\u001b[28;68H─\u001b[28;69H─\u001b[28;70H─\u001b[28;71H─\u001b[28;72H─\u001b[28;73H─\u001b[28;74H─\u001b[28;75H─\u001b[28;76H─\u001b[28;77H─\u001b[28;78H─\u001b[28;79H─\u001b[28;80H─\u001b[28;81H─\u001b[28;82H─"]
+[0.000, "o", "\u001b[28;83H─\u001b[28;84H─\u001b[28;85H─\u001b[28;86H─\u001b[28;87H╯\u001b[18;47H\u001b[34h\u001b[?25h"]
+[2.506, "o", "\u001b[?25l\u001b[17;46H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m \u001b[18;46H \u001b[19;46H \u001b[20;46H \u001b[21;46H \u001b[22;46H \u001b[23;46H \u001b[24;46H \u001b[25;46H \u001b[26;46H \u001b[27;46H \u001b[28;46H \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[14B \r\u001b[42;1H[gitlad] Refreshing PR list...\u001b[1;3H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mLoading pull requests... \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://pr-li"]
+[0.000, "o", "st[/private/tmp/gitlad-forge-demo-repo/] \u001b[1;3H\u001b[34h\u001b[?25h"]
+[0.547, "o", "\u001b[?25l\r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNo pull requests found. \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPull Requests (actionshrimp/gitlad-demo-repo) (0) \u001b[2;3H\u001b[34h\u001b[?25h"]
+[0.112, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] PR list refreshed (1 PRs)\u001b[2;3H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMy Pull Requests (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m#2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Add input validation module \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+95\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;48H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m1\u001b[2;3H\u001b[34h\u001b[?25h"]
+[5.735, "o", "\u001b[?25l\n\u001b[34h\u001b[?25h"]
+[1.111, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[39B \r\u001b[42;1H[gitlad] Refreshing PR #2...\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mLoading PR #2... \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \u001b[41;13H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mdetail[/private/tmp/gitlad-forge-demo-repo/]\u001b[1;3H\u001b[34h\u001b[?25h"]
+[0.593, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[41B \r\u001b[42;1H[gitlad] PR #2 refreshed\r\u001b[40A\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m#2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mAdd input validation module\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mAuthor: \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m State: \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mOPEN\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mBase: main <- feature/add-validation \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+95\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mMerge: \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mReady to merge\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m---\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m## Summary \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mThis PR adds a validation module for input type checking and configuration \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mvalidation. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m### Changes \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- New `src"]
+[0.000, "o", "/validate.lua` with type checks, range validation, and pattern \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mmatching \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- Updated `src/main.lua` to validate config on setup \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- Extended `src/utils.lua` with `map()` and `filter()` functions \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- Comprehensive tests in `tests/validate_test.lua` \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m"]
+[0.000, "o", "\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m## Test plan \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [x] Unit tests for all validation functions \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [x] Config validation integration test \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [ ] Manual testing with edge cases \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55"]
+[0.000, "o", "m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m---\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mComments (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Looks like a solid foundation for validation! A couple of thoughts: \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 1. The `validate_config` function is clean —\u001b[29;49H love that it returns both a \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m boolean and the error list. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 2. Have you considered adding a `validate_schema` function for more c"]
+[0.000, "o", "omplex \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m nested configs? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice work overall. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@act"]
+[0.001, "o", "ionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m One more thing —\u001b[37;21H the `matches_pattern` function uses Lua patterns, not \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m regex. Might be worth adding a note in the docstring so users don't get \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m confused by the difference. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPR #2: Add input validation module \u001b[2;3H\u001b[34h\u001b[?25h"]
+[3.648, "o", "\u001b[?25l\u001b[24B\u001b[34h\u001b[?25h"]
+[0.752, "o", "\u001b[?25l\u001b[10B\u001b[34h\u001b[?25h"]
+[0.752, "o", "\u001b[?25l\u001b[2;40r\u001b[2;1H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001b[3M\u001b[1;42r\u001b[38;1H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReviews (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 45 minutes ago \r\u001b[C\u001b[C\u001b[34h\u001b[?25h"]
+[0.753, "o", "\u001b[?25l\u001b[2;40r\u001b[2;1H\u001b[16M\u001b[1;42r\u001b[25;1H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Good progress! Left a few inline suggestions. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/validate.lua:26\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Consider using `tonumber()` here as a fallback —\u001b[28;55H some callers might \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;21"]
+[0.000, "o", "5;186m\u001b[48;2;31;31;40m pass string representations of numbers. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/main.lua:18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m This error message could be more descriptive. Maybe include which config \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m keys failed validation? "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:38\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice addition! But the `map` function signature should probably document \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m that `fn` receives `(value, index)` —\u001b[37;44H it's not obvious from the name \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;"]
+[0.000, "o", "2;220;215;186m\u001b[48;2;31;31;40m alone. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 24 minutes ago \r\u001b[C\u001b[C\u001b[34h\u001b[?25h"]
+[1.003, "o", "\u001b[?25l\u001b[29C5\r\u001b[C\u001b[C\u001b[34h\u001b[?25h"]
+[4.915, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\n\n \r\u001b[42;1H[gitlad] Loading PR diff...\u001b[40;3H\u001b[34h\u001b[?25h"]
+[0.052, "o", "\u001b[?25l\u001b[H\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29m g//p/p/t/g/] \u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;22;22;29mX\r\n\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;54;54;70m Files (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ M main.lua +"]
+[0.000, "o", "12 \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;54;54;70m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m utils.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+36\r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ tests\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate_test.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+29\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;36H│\u001b[4;36H│\u001b[5;36H│\u001b[6;36H│\u001b[7;36H│\u001b[8;36H│\u001b[9;36H│\u001b[10;36H│\u001b[11"]
+[0.000, "o", ";36H│\u001b[12;36H│\u001b[13;36H│\u001b[14;36H│\u001b[15;36H│\u001b[16;36H│\u001b[17;36H│\u001b[18;36H│\u001b[19;36H│\u001b[20;36H│\u001b[21;36H│\u001b[22;36H│\u001b[23;36H│\u001b[24;36H│\u001b[25;36H│\u001b[26;36H│\u001b[27;36H│\u001b[28;36H│\u001b[29;36H│\u001b[30;36H│\u001b[31;36H│\u001b[32;36H│\u001b[33;36H│\u001b[34;36H│\u001b[35;36H│\u001b[36;36H│\u001b[37;36H│\u001b[38;36H│\u001b[39;36H│\u001b[40;36H│\u001b[41;1H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2"]
+[0.000, "o", ";149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;"]
+[0.000, "o", "2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"info\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_ret"]
+[0.000, "o", "ries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m3\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b["]
+[0.000, "o", "48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mend \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f"]
+[0.000, "o", "\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[28;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40"]
+[0.000, "o", "mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m10\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;4"]
+[0.000, "o", "2m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[31;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;74;42;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m2\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[32;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[33;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[34;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;"]
+[0.000, "o", "42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[35;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[37;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 27 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[38A\u001b[m\u000f\u001b[38;2;22;22;29m\u001b[48;2;31;31;40m│\u001b[3;88H│\u001b[4;88H│\u001b[5;88H│\u001b[6;88H│\u001b[7;88H│\u001b[8;88H│\u001b[9;88H│\u001b[10;88H│\u001b[11;88H│\u001b[12;88H│\u001b[13;88H│\u001b[14;88H│\u001b[15;88H│\u001b[16;88H│\u001b[17;88H│\u001b[18;88H│\u001b[19;88H│\u001b[20;88H│\u001b[21;88H│\u001b[22;88H│\u001b[23;88H│\u001b[24;88H│\u001b[25;88H│\u001b[26;88H│\u001b[27;88H│\u001b[28;88H│\u001b[29;88H│\u001b[30;88H│\u001b[31;88H│\u001b[32;88H│\u001b[33;88H│\u001b[34;88H│\u001b[35;88H│\u001b[36;88H│\u001b[37;88H│\u001b[38;88H│\u001b[39;88H│\u001b[40;88H│\u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[39A\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 1 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 2 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[0.000, "o", "validate \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mrequire\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"src.validat\u001b[4;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 3 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 5 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[3"]
+[0.000, "o", "8;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b["]
+[0.000, "o", "38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"in\u001b[11;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[12;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m5000\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;"]
+[0.000, "o", "2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[13;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[15;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m errors \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mvalidat\u001b[16;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;1"]
+[0.000, "o", "10m\u001b[48;2;42;74;42mnot\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[17;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42merror\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"Invalid config: \"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[18;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[19;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[4"]
+[0.000, "o", "8;2;31;31;40m \u001b[21;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;"]
+[0.000, "o", "40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[25;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[27;89H\u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[28;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 27 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[30;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 29 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i \u001b["]
+[0.000, "o", "m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[31;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[32;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55"]
+[0.000, "o", "m 31 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mis_positive\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mth\u001b[33;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 32 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[34;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 33 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;"]
+[0.000, "o", "2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 34 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 35 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[37;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 36 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 37 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;"]
+[0.000, "o", "40m \u001b[40;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[41;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \r\u001b[39A\u001b[34h\u001b[?25h"]
+[0.420, "o", "\u001b[?25l\u001b[41C\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[3;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[4;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[5;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[6;42H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[7;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[8;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[9;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[10;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"info\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[11;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_re"]
+[0.000, "o", "tries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;31;31;40m3\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[12;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[13;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[14;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[15;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[16;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[17;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[18;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;26;26;42m~\u001b[19;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mend\u001b[20;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[4"]
+[0.000, "o", "8;2;26;26;42m \u001b[21;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;"]
+[0.000, "o", "42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[25;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[27;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[28;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m0"]
+[0.000, "o", " \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[30;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;2"]
+[0.000, "o", "10;126;153m\u001b[48;2;74;42;42m10\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;74;42;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[32;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;74;42;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;74;42;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;74;42;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;74;42;42m2\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;74;42;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;74;42;42m \u001b[33;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[34;42H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~\u001b[35;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26"]
+[0.000, "o", ";26;42m~ \u001b[36;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results\u001b[38;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[39;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Main application entry point\u001b[3;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;"]
+[0.000, "o", "42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mrequire\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"src.valid\u001b[4;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[5;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[6;94H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msetup\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mopts\u001b[m\u000f\u001b[38;2;156;1"]
+[0.000, "o", "71;202m\u001b[48;2;31;31;40m)\u001b[7;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[8;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{\u001b[9;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2"]
+[0.000, "o", ";31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[10;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mlog_level\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[11;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m opts\u001b[m\u000f\u001b[38;2;156;171;2"]
+[0.000, "o", "02m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m opts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mtimeout\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42mor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m5000\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[13;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m}\u001b[14;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[15;94H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b"]
+[0.000, "o", "[38;2;220;215;186m\u001b[48;2;42;74;42m errors \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mvalid\u001b[16;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[0;1m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42mnot\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m ok \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[17;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42merror\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;42;74;42m\"Invalid config: \"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtab\u001b[18;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;1"]
+[0.000, "o", "27;184m\u001b[48;2;42;74;42mend\u001b[19;94H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[20;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[20;97H─\u001b[20;98H @actionshrimp: This error messa\u001b[21;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m0 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mrun\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mconfig\u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;31;31;40mdebug\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mprint\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"Running in debug mode\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[25;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[26;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;4"]
+[0.000, "o", "0m()\u001b[27;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[28;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[29;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mprocess\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m()\u001b[30;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[31;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m29 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;"]
+[0.000, "o", "2;220;215;186m\u001b[48;2;42;74;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m1\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mconfig\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;230;195;132m\u001b[48;2;42;74;42mmax_retries\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42md\u001b[32;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m0 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m*\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;210;126;153m\u001b[48;2;42;74;42m2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[33;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b["]
+[0.000, "o", "m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m validate\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mis_positive\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[34;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresults\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m value\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[35;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[36;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2"]
+[0.000, "o", ";42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m results\u001b[38;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[39;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\u001b[38A\u001b[34h\u001b[?25h"]
+[5.020, "o", "\u001b[?25l\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m Files (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\n\n\u001b[34h\u001b[?25h"]
+[1.502, "o", "\u001b[?25l\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m utils.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m \r\u001b[6;1H\u001b[34h\u001b[?25h"]
+[1.521, "o", "\u001b[?25l\u001bM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m main.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+12\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ M utils.lua +18\u001b[2;47H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mUtility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;39H"]
+[0.000, "o", "\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mtrim\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[6;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m^%s*(.-)%s*$\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[7;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;39H\u001b[m\u000f\u001b[38;2;84;84;1"]
+[0.000, "o", "09m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;38H\u001b[m\u000f\u001b[38;2;84;84;1"]
+[0.001, "o", "09m\u001b[48;2;42;42;55m10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m sep \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"]+)\"\u001b[12;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;"]
+[0.000, "o", "215;186m\u001b[48;2;31;31;40m part\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[14;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[15;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m14 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m16 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;15"]
+[0.000, "o", "6;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;5"]
+[0.000, "o", "5m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[20;39H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[21;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[22;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m21 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;3"]
+[0.000, "o", "1;40m \u001b[23;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[25;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[26;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[27;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[28;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[29;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[30;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;4"]
+[0.000, "o", "2m~ \u001b[31;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[32;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[36;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[37;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[38;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[39;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[40;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;99H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[4"]
+[0.000, "o", "8;2;31;31;40mUtility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;96H \u001b[5;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mtrim\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[6;96H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mmatch\u001b[m\u000f\u001b["]
+[0.000, "o", "38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m^%s*(.-)%s*$\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[7;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;98H \u001b[9;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;98H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m"]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;98H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m sep\u001b[12;96H \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;98H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend"]
+[0.000, "o", "\u001b[14;96H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[15;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;96H \u001b[17;96H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;96H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v "]
+[0.000, "o", "\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;96H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[20;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;90H\u001b[m\u000f\u001b[38;2;84;84;109m"]
+[0.000, "o", "\u001b[48;2;42;42;55m20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[22;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mmap\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[25;91H\u001b"]
+[0.000, "o", "[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[26;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;91H\u001b[m\u000f\u001b[38;2;84;84;109"]
+[0.000, "o", "m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mi\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[28;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[29;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[30;91H\u001b[m"]
+[0.000, "o", "\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[31;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[32;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfilter\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[33;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m2 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38"]
+[0.000, "o", ";2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[34;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m3 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[35;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m4 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;"]
+[0.000, "o", "42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[36;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m5 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresult\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[37;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m6 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[38;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74"]
+[0.000, "o", ";42m \u001b[39;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m8 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[40;96H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[40;97H─\u001b[40;98H @actionshrimp: Nice addition! B\r\u001b[34A\u001b[34h\u001b[?25h"]
+[0.787, "o", "\u001b[?25l\u001b[4A\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m Files (4)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m ─\u001b[3;3H─\u001b[3;4H─\u001b[3;5H─\u001b[3;6H─\u001b[3;7H─\u001b[3;8H─\u001b[3;9H─\u001b[3;10H─\u001b[3;11H─\u001b[3;12H─\u001b[3;13H─\u001b[3;14H─\u001b[3;15H─\u001b[3;16H─\u001b[3;17H─\u001b[3;18H─\u001b[3;19H─\u001b[3;20H─\u001b[3;21H─\u001b[3;22H─\u001b[3;23H─\u001b[3;24H─\u001b[3;25H─\u001b[3;26H─\u001b[3;27H─\u001b[3;28H─\u001b[3;29H─\u001b[3;30H─\u001b[3;31H─\u001b[3;32H─\u001b[3;33H─\u001b[3;34H─\u001b[3;35H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ src\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;37;37;53mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m main.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+12\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;54;54;70m▸ M utils.lua +18 \r\n\u001b[m\u000f\u001b[38;2;220;215;186m"]
+[0.001, "o", "\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+36\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40m ▾ tests\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40mA\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m validate_test.lua \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+29\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] \u001b[2;44H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m-- Utility functions\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b"]
+[0.000, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;44H \u001b[5;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mtrim\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;44H \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m^"]
+[0.000, "o", "%s*(.-)%s*$\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;44H \u001b[9;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;"]
+[0.000, "o", "31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"]+)\"\u001b[12;44H\u001b[m\u000f\u001b[38;2;220;215;186"]
+[0.000, "o", "m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;44H \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;44H \u001b[17;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;3"]
+[0.000, "o", "1;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m_\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31"]
+[0.000, "o", ";40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;44H \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;44H \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mr"]
+[0.000, "o", "eturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;44H\u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;44H \u001b[24;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[25;44H~ \u001b[26;44H~ \u001b[27;44H~ \u001b[28;44H~ \u001b[29;44H~ \u001b[30;44H~ \u001b[31;44H~ \u001b[32;44H~ \u001b[33;44H~ \u001b[34;44H~ \u001b[35;44H~ \u001b[36;44H~ "]
+[0.000, "o", " \u001b[37;44H~ \u001b[38;44H~ \u001b[39;44H~ \u001b[40;44H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;37H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[2;44H\u001b[34h\u001b[?25h"]
+[1.997, "o", "\u001b[?25l\u001b[37B\u001b[34h\u001b[?25h"]
+[1.702, "o", "\u001b[?25l\u001b[40;96H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[40;97H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[39;44H\u001b[34h\u001b[?25h"]
+[2.005, "o", "\u001b[?25l\u001b[36;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[39;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[40;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m│\u001b[36;97H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m"]
+[0.000, "o", "Nice addition! But the `map` func\u001b[37;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m└\u001b[37;97H─\u001b[37;98H─\u001b[37;99H─\u001b[37;100H─\u001b[37;101H─\u001b[37;102H─\u001b[37;103H─\u001b[37;104H─\u001b[37;105H─\u001b[37;106H─\u001b[37;107H─\u001b[37;108H─\u001b[37;109H─\u001b[37;110H─\u001b[37;111H─\u001b[37;112H─\u001b[37;113H─\u001b[37;114H─\u001b[37;115H─\u001b[37;116H─\u001b[37;117H─\u001b[37;118H─\u001b[37;119H─\u001b[37;120H─\u001b[37;121H─\u001b[37;122H─\u001b[37;123H─\u001b[37;124H─\u001b[37;125H─\u001b[37;126H─\u001b[37;127H─\u001b[37;128H─\u001b[37;129H─\u001b[37;130H─\u001b[38;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 39 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[39;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 40 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[40;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 41 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220"]
+[0.000, "o", ";215;186m\u001b[48;2;31;31;40m \u001b[2;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b["]
+[0.000, "o", "48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m s\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m sep\u001b[7;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mins"]
+[0.000, "o", "ert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m part\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m parts \u001b[10;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[12;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[3m\u001b"]
+[0.000, "o", "[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;2"]
+[0.000, "o", "20;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m v \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m value \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;"]
+[0.000, "o", "2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mmap\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[20;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 24 "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[21;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 25 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[22;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 26 \u001b[m\u000f\u001b[38;2;220"]
+[0.001, "o", ";215;186m\u001b[48;2;42;74;42m result\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mi\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[23;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 27 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[24;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 28 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[25;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;5"]
+[0.000, "o", "5m 29 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[26;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[27;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 31 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfilter\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[28;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 32 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b["]
+[0.000, "o", "48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[29;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 33 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[30;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 34 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[3"]
+[0.000, "o", "8;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[31;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 35 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresult\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[32;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 36 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[33;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 37 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[0.000, "o", "42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[34;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[35;89H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[35;97H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 6 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 7 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 8 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215"]
+[0.000, "o", ";186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msplit\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 9 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;31;31;40m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 10 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;3"]
+[0.000, "o", "1;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40ms\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m:\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mgmatch\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"([^\"\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40msep\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m..\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m\"]+)\"\u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 11 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b"]
+[0.000, "o", "[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mpart\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 12 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 13 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mparts\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 14 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 15 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;"]
+[0.000, "o", "31;31;40m \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 16 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mcontains\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 17 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m_\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;1"]
+[0.000, "o", "84m\u001b[48;2;31;31;40min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;31;31;40mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 18 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mv\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;31;31;40m==\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mvalue\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mtrue\u001b[m\u000f\u001b[38;2;"]
+[0.000, "o", "220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 19 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 20 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[0;1m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mfalse\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 21 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;31;31;40mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 22 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[4"]
+[0.000, "o", "8;2;26;26;42m~ \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[21;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[22;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[23;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[24;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[25;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[26;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[27;37H\u001b[m\u000f\u001b[38;2;84;"]
+[0.000, "o", "84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[28;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[29;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[30;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[31;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[32;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[33;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[34;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ "]
+[0.000, "o", " \u001b[35;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[40;44H\u001b[34h\u001b[?25h"]
+[1.699, "o", "\u001b[?25l\u001b[35;114H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m6\u001b[40;44H\u001b[34h\u001b[?25h"]
+[2.001, "o", "\u001b[?25l\u001b[6A\u001b[34h\u001b[?25h"]
+[1.502, "o", "\u001b[?25l\u001b[6B\u001b[34h\u001b[?25h"]
+[1.125, "o", "\u001b[?25l\u001b[1;16H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m4\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m g//COMMENT_EDITMSG \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\n \u001b[3;37H \u001b[4;37H\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReview comment on src/utils.lua:23\u001b[5;37H\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPress C-c C-c to submit, C-c C-k to abort\u001b[6;37H\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;31;31;40m# \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mLines starting with '#' will be ignored\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[7;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[8;37H~ \u001b[9;37H~ \u001b[10;37H~ \u001b[11;37H~ \u001b[12;37H~ \u001b[13;37H~ "]
+[0.000, "o", " \u001b[14;37H~ \u001b[15;37H~ \u001b[16;37H~ \u001b[17;37H~ \u001b[18;37H~ \u001b[19;37H~ \u001b[20;37H~ \u001b[21;37H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://COMMENT_EDITMSG \u001b[22;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[23;44H~ \u001b[24;44H~ \u001b[25;44H~ \u001b[26;44H~ \u001b[27;44H~ \u001b[28;44H~ \u001b[29;44H~ \u001b[30;44H~ "]
+[0.000, "o", " \u001b[31;44H~ \u001b[32;44H~ \u001b[33;44H~ \u001b[34;44H~ \u001b[35;44H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[36;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[37;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[38;44H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[39;44H~ \u001b[40;44H\u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[41;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;22;22;29m[Scratch] "]
+[0.000, "o", " \u001b[2;37H\u001b[34h\u001b[?25h"]
+[1.481, "o", "\u001b[?25l\u001b[1;17H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m+ g//COMMENT_EDITMSG \u001b[2;37H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mShould we add a nil guard here?\u001b[21;62H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[+]\u001b[2 q\u001b[2;67H\u001b[34h\u001b[?25h"]
+[2.008, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[40B \r\u001b[42;1H[gitlad] Submitting review comment...\u001b[1;16H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;42;55m3\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;42;42;55m [Scratch] \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[2;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[3;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[4;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[5;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[6;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[7;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;2"]
+[0.000, "o", "6;26;42m~ \u001b[8;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[9;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[10;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[11;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[12;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[13;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[14;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[15;37H\u001b[m\u000f\u001b[38;2;84;84;109m"]
+[0.000, "o", "\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[16;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[17;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[18;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[19;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[20;37H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;37"]
+[0.000, "o", "H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m 23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[21;45H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 25 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m│\u001b[22;45H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mShould we add a nil guard here?\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m└\u001b[23;45H─\u001b[23;46H─\u001b[23;47H─\u001b[23;48H─\u001b[23;49H─\u001b[23;50H─\u001b[23;51H─\u001b[23;52H─\u001b[23;53H─\u001b[23;54H─\u001b[23;55H─\u001b[23;56H─\u001b[23;57H─\u001b[23;58H─\u001b[23;59H─\u001b[23;60H─\u001b[23;61H─\u001b[23;62H─\u001b[23;63H─\u001b[23;64H─\u001b[23;65H─\u001b[23;66H─\u001b[23;67H─\u001b[23;68H─\u001b[23;69H─\u001b[23;70H─\u001b[23;71H─\u001b[23;72H─\u001b[23;73H─\u001b[23;74H─\u001b[23;75H─\u001b[23;76H─\u001b[23;77H─\u001b[23;78H─\u001b[23;79H─\u001b[23;80H─\u001b[23;81H─\u001b[23;82H─\u001b[23;83H─\u001b[23;84H"]
+[0.000, "o", "─\u001b[23;85H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[25;37H~ \u001b[26;37H~ \u001b[27;37H~ \u001b[28;37H~ \u001b[29;37H~ \u001b[30;37H~ \u001b[31;37H~ \u001b[32;37H~ \u001b[33;37H~ \u001b[34;37H~ \u001b[35;37H~ \u001b[36;37H~ \u001b[37;37H~ \u001b[38;37H~ \u001b[39;37H~ "]
+[0.000, "o", " \u001b[40;37H~ \u001b[41;37H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29m[Scratch] \u001b[2;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m26 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m[\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mi\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m]\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m i\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[3;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m27 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[4;90H\u001b[m\u000f\u001b[38;2;84;"]
+[0.001, "o", "84;109m\u001b[48;2;42;42;55m28 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[5;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m29 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[6;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m30 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[7;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m31 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfunction\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;42;74;42mM\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfilter\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;184;180;208m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m "]
+[0.000, "o", " \u001b[8;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m32 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mlocal\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[m\u000f\u001b[38;2;192;163;110m\u001b[48;2;42;74;42m=\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;149;127;184m\u001b[48;2;42;74;42m{}\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[9;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m33 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mfor\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m _\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42min\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mipairs\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mtbl\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mdo\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[10;90H\u001b[m\u000f"]
+[0.000, "o", "\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m34 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mif\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42mfn\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mv\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mthen\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[11;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m35 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[38;2;127;180;202m\u001b[48;2;42;74;42mtable\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m.\u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;42;74;42minsert\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m(\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42mresult\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m,\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m v\u001b[m\u000f\u001b[38;2;156;171;202m\u001b[48;2;42;74;42m)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[12;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m36 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[0.000, "o", "48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[13;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m37 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[14;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;42;74;42mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m result \u001b[15;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m┌\u001b[15;97H @\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40mactionshrimp\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m 46 minutes ago\u001b[16;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m│\u001b[16;97H \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40mNice addition! But the `map` func\u001b[17;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m38 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;3"]
+[0.000, "o", "1;31;40m└\u001b[17;97H─\u001b[17;98H─\u001b[17;99H─\u001b[17;100H─\u001b[17;101H─\u001b[17;102H─\u001b[17;103H─\u001b[17;104H─\u001b[17;105H─\u001b[17;106H─\u001b[17;107H─\u001b[17;108H─\u001b[17;109H─\u001b[17;110H─\u001b[17;111H─\u001b[17;112H─\u001b[17;113H─\u001b[17;114H─\u001b[17;115H─\u001b[17;116H─\u001b[17;117H─\u001b[17;118H─\u001b[17;119H─\u001b[17;120H─\u001b[17;121H─\u001b[17;122H─\u001b[17;123H─\u001b[17;124H─\u001b[17;125H─\u001b[17;126H─\u001b[17;127H─\u001b[17;128H─\u001b[17;129H─\u001b[17;130H─\u001b[18;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m39 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[19;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m40 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[20;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26"]
+[0.000, "o", ";26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[22;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[23;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[24;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[25;89H~ \u001b[26;89H~ \u001b[27;89H~ \u001b[28;89H~ \u001b[29;89H~ \u001b[30;89H~ \u001b[31;89H~ \u001b[32;89H~ \u001b[33;89H~ \u001b[34;89H~ \u001b[35;89H~ "]
+[0.000, "o", " \u001b[36;89H~ \u001b[37;89H~ \u001b[38;89H~ \u001b[39;89H~ \u001b[40;89H~ \u001b[20;44H\u001b[34h\u001b[?25h"]
+[0.713, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;31;31;40m\r\u001b[22B \r\u001b[42;1H[gitlad] Review comment added\u001b[20;44H\u001b[34h\u001b[?25h"]
+[0.533, "o", "\u001b[?25l\u001b[4A\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m~ \u001b[17;44H~ \u001b[18;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;38H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m23 \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[19;45H─\u001b[19;46H @actionshrimp: Should we add a nil guard\u001b[20;44H─\u001b[20;45H─\u001b[20;46H @actionshrimp: Should we add a nil guard\u001b[21;37H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[22;37H~ \u001b[23;37H~ \u001b[15;96H\u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m─\u001b[15;97H─\u001b[15;98H @actionshrimp: Nice addition! B\u001b[16;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m9 \u001b[m\u000f\u001b[3m\u001b[38;2;149;127;184m"]
+[0.000, "o", "\u001b[48;2;42;74;42mend\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[17;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m40 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;42;74;42m \u001b[18;90H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m41 \u001b[m\u000f\u001b[3m\u001b[38;2;255;93;98m\u001b[48;2;31;31;40mreturn\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40mM\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[19;91H\u001b[m\u000f\u001b[38;2;84;84;109m\u001b[48;2;42;42;55m1 \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[20;96H\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;26;26;42m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[21;89H\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \u001b[22;89H~ \u001b[23;89H~ \u001b[18;44H\u001b[34h\u001b[?25h"]
+[1.862, "o", "\u001b[?25l\r\u001b[16A\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [x] Config validation integration test \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m- [ ] Manual testing with edge cases \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m---\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mComments (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Looks like a solid foundation for validation! A couple of thoughts: \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 1. The `validate_config` func"]
+[0.000, "o", "tion is clean —\u001b[10;49H love that it returns both a \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m boolean and the error list. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 2. Have you considered adding a `validate_schema` function for more complex \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m nested configs? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;3"]
+[0.000, "o", "1;40m Nice work overall. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m One more thing —\u001b[18;21H the `matches_pattern` function uses Lua patterns, not \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m regex. "]
+[0.000, "o", "Might be worth adding a note in the docstring so users don't get \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m confused by the difference. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReviews (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;16"]
+[0.000, "o", "9m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 45 minutes ago \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Good progress! Left a few inline suggestions. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/validate.lua:26\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Consider using `tonumber()` here as a fallback —\u001b[28;55H some callers might \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m pass string representations of numbers. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/main.lua:18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186"]
+[0.000, "o", "m\u001b[48;2;31;31;40m This error message could be more descriptive. Maybe include which config \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m keys failed validation? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:38\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice addition! But the `map` function signature should probably document "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m that `fn` receives `(value, index)` —\u001b[37;44H it's not obvious from the name \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m alone. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 25 minutes ago "]
+[0.000, "o", " \u001b[H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mPR #2: Add input validation module \r\u001b[40B\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mgitlad://pr-detail[/private/tmp/gitlad-forge-demo-repo/] \u001b[40;3H\u001b[34h\u001b[?25h"]
+[1.390, "o", "\u001b[?25l\u001b[38A\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mMy Pull Requests (1)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[3;3H \u001b[m\u000f\u001b[38;2;255;160;102m\u001b[48;2;31;31;40m#2\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Add input validation module \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;43;51;40m+95\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;195;64;67m\u001b[48;2;67;36;43m-2\r\n\u001b[m\u000f\u001b[38;2;31;31;40m\u001b[48;2;31;31;40m~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r"]
+[0.001, "o", "\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ \r\n~ "]
+[0.000, "o", " \r\n~ \r\n~ \u001b[1;2H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mull Requests (actionshrimp/gitlad-demo-repo) (1)\u001b[41;13H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mlist[/private/tmp/gitlad-forge-demo-repo/] \u001b[3;3H\u001b[34h\u001b[?25h"]
+[1.400, "o", "\u001b[?25l\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m\u001bM \u001b[3;5H\u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Looks like a solid foundation for validation! A couple of thoughts: \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 1. The `validate_config` function is clean —\u001b[6;49H love that it returns both a \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b["]
+[0.000, "o", "48;2;31;31;40m boolean and the error list. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 2. Have you considered adding a `validate_schema` function for more complex \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m nested configs? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice work overall. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m "]
+[0.000, "o", " \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40m45 minutes ago\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m One more thing —\u001b[14;21H the `matches_pattern` function uses Lua patterns, not \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m regex. Might be worth adding a note in the docstring so users don't get \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;22"]
+[0.000, "o", "0;215;186m\u001b[48;2;31;31;40m confused by the difference. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mReviews (2)\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;11"]
+[0.000, "o", "3;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 45 minutes ago \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Good progress! Left a few inline suggestions. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/validate.lua:26\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Consider using `tonumber()` here as a fallback —\u001b[24;55H"]
+[0.000, "o", " some callers might \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m pass string representations of numbers. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/main.lua:18\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m This error message could be more descriptive. Maybe include which config \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;"]
+[0.000, "o", "2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m keys failed validation? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:38\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Nice addition! But the `map` function signature should probably document \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m that `fn` receives `(value, index)` —\u001b[33;44H it"]
+[0.000, "o", "'s not obvious from the name \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m alone. \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;152;187;108m\u001b[48;2;31;31;40m@actionshrimp\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[3m\u001b[38;2;114;113;105m\u001b[48;2;31;31;40mCOMMENTED\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m 25 minutes ago \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m "]
+[0.000, "o", " \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40msrc/utils.lua:23\u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m Should we add a nil guard here? \r\n\u001b[m\u000f\u001b[38;2;147;138;169m\u001b[48;2;42;42;55m \u001b[m\u000f\u001b[38;2;220;215;186m\u001b[48;2;31;31;40m \u001b[1;2H\u001b[0;1m\u000f\u001b[38;2;126;156;216m\u001b[48;2;31;31;40mR #2: Add input validation module \u001b[41;13H\u001b[m\u000f\u001b[38;2;200;192;147m\u001b[48;2;22;22;29mdetail[/private/tmp/gitlad-forge-demo-repo/]\u001b[36;3H\u001b[34h\u001b[?25h"]
+[4.329, "o", "\u001b[?25l\u001b[?2031l\u001b[2 q\u001b[?1002l\u001b[?1006l\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[?1l\u001b>\u001b[>4;0m\u001b[?2004l\u001b[?1004l\u001b[c\u001b[34h\u001b[?25h"]
+[0.000, "o", "\u001b[?25l\r\u001b[6B\u001b[?1049l\u001b[34h\u001b[?25h"]
+[0.001, "x", "0"]
diff --git a/docs/demo-preview.gif b/docs/demo-preview.gif
deleted file mode 100644
index bd78bd6..0000000
Binary files a/docs/demo-preview.gif and /dev/null differ
diff --git a/docs/index.html b/docs/index.html
index 1bb09a1..71a31f6 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -340,7 +340,17 @@ gitlad.nvim
-
+
Core workflow
+
Status view, staging, commit, branch, log, and git command history.
+
+
+
Advanced diff
+
Native side-by-side diff viewer, 3-way staging, and merge conflict resolution.
+
+
+
GitHub integration
+
PR list, detail view, inline review comments, and thread navigation.
+
@@ -479,16 +489,24 @@ Feedback welcome