by@kuromunori
AC
1127ms
┌──────────────────────────┐
│ ┌─┴─╖
│ ┌─────────┤ · ╟──┐
│ │ ╓───╖ ╘═╤═╝ │
│ ┌───╖ └──╢ ʃ ╟────┘ │
└──┤ × ╟─────┐ ╙─┬─╜ │
╘═╤═╝ ╔══╧═╗ ┌─┴─╖ ┌────╖ │
┌───────────────────────────┴─┐ ║ 21 ║ │ × ╟──┤ >> ╟─┘
┌───────────┴───────────┐ │ ╚══╤═╝ ╘═╤═╝ ╘═╤══╝
│ ┌────╖ ╔════╗ │ ┌─┴─╖ └──────┘ │
┌───────┴──┤ << ╟──╢ −1 ║ ┌─┴─╖ ┌──────────┤ · ╟───────────────┐ │
│ ╘══╤═╝ ╚════╝ ┌──┤ · ╟──┴───────┐ ╘═╤═╝ ├─┘
│ ┌─┴─┐ ┌─┘ ╘═╤═╝ ╔════╗ │ │ │
│ │ ├────┬───┘ │ ║ 21 ║ │ │ │
│ └───┘ ┌┴┐ ┌────┘ ╚══╤═╝ │ │ │
│ ┌────╖ ╔════╗ └┬┘ │ ┌────╖ ┌──┴─╖ │ │ │
└──┤ << ╟──╢ −1 ║ ┌─┴──┐ └─┤ >> ╟──┤ << ║ │ │ ┌────╖ │
╘═╤══╝ ╚════╝ ┌┴┐ │ ╘═╤══╝ ╘══╤═╝ │ └───────┤ >> ╟──┐ │
┌┴┐ └┬┘ ┌─┴─╖ ┌┐ │ └────┘ ╘══╤═╝ ├─┘
└┬┘ ├──┤ ? ╟─┤├─┤ ╔═════════╗ ╔════╗ ┌───╖ │ │
└─────────────┘ ╘═╤═╝ └┘ └──╢ 2097151 ║ ║ −1 ╟──┤ ≠ ╟─┴─┐ │
┌─┴─╖ ┌┐ ╚═════════╝ ╚════╝ ╘═╤═╝ │ │
┌──┤ ? ╟─┤├───────────────────────────┤ │ │
│ ╘═╤═╝ └┘ ╔═══╗ ┌─┴─╖ │ │
│ │ ║ 0 ╟──┤ ≠ ╟───┘ │
│ ╚═══╝ ╘═══╝ │
└──────────────────────────────────────────────┘
╓─────────╖
║ str→int ║
╔═════════╗ ╙────┬────╜
║ 2097151 ╟────┬─────────┴─────────┐
╚═════════╝ ┌┴┐ │
╔════╗ ┌───╖ └┬┘ ┌───╖ ╔══════╗ │
║ 45 ╟──┤ ≠ ╟──┴──┤ ≠ ╟──╢ 8722 ║ │
╚════╝ ╘═╤═╝ ╘═╤═╝ ╚══════╝ │
└────┬────┘ ┌─┴─╖
┌───────────────┴─────────────────┤ · ╟──────────────────────┐
│ ╔═════════════════════════════╗╘═╤═╝ │
│ ║ str→int(s) = ║ │ ┌──────────────────┐ │
│ ║ let c = s & (1<<21 − 1); ║ │ │ ╔════╗ ┌────╖ │ │
│ ║ let m = c = '−' | c = '−'; ║ └──┤ ║ 21 ╟──┤ >> ╟──┘ │
│ ║ let w = m ? s >> 21 : s; ║ │ ╚════╝ ╘═╤══╝ │
│ ║ let t = str→int p(w, 0); ║ │ ┌─┴─╖ │
│ ║ t = −1 ? 0 : m ? ~t : t ║ └──────────┤ ? ╟──────┘
│ ╚═════════════════════════════╝ ╘═╤═╝ ╓───╖
└────────┐ ╔═══╗ ┌───────────╖ │ ║ ↯ ║
│ ║ 0 ╟────────────────┤ str→int p ╟────┘ ╙─┬─╜
│ ╚═╤═╝ ┌──────┐ ╘════╤══════╝ ┌──────────────┴────────────────┐
┌─┴─╖ ┌─┴─╖ ┌─┴─╖ ╔═╧══╗ │ │ ┌─┐ ╔═══╗ ┌───╖ │
┌──┤ ? ╟──┤ ? ╟──┤ = ║ ║ −1 ║ │ │ └─┤ ┌────╢ 0 ╟─┤ ≠ ╟─┴─┐
┌─┴─╖╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╚════╝ │ ┌──────┴─┐ ┌┐ ╔═╧═╕ ┌─┴─╖ ╚═══╝ ╘═╤═╝ │
│ ~ ║ │ │ ├────────────────┘ │ ├─┤├─╢ ├─┤ ? ╟──────────┤ │
╘═╤═╝ ├─────────────┘ │ │ └┘ ╚═╤═╛ ╘═╤═╝ ╔════╗ ┌─┴─╖ │
└────┘ │ ╔══════╧══╗ ┌─┴─╖ │ ║ −1 ╟─┤ ≠ ╟───┘
│ ║ 2097151 ║ │ ↯ ║ ╚════╝ ╘═══╝
╓┬───────────╖ │ ╚═════════╝ ╘═╤═╝
┌──╫┘ str→int p ╟────────────────┐ │ ┌─┴──╖ ╔════╗
│ ╙────────────╜ ┌─────────────┴───────────────────┐ └─────────────┤ >> ╟─╢ 21 ║
│ │ ╔═════════╗ │ ╘════╝ ╚════╝
│ ┌──┴───┬──╢ 2097151 ║ ╔═══╗ ┌───╖ │ ┌───╖ ╔════╗
┌──┴─┐ │ ┌┴┐ ╚═════════╝ ║ 0 ╟──┤ ≠ ╟──┴──┤ ≠ ╟──╢ −1 ║
│ ┌─┴─╖ ┌───╖ ┌─┴─╖ └┬┘ ╚═══╝ ╘═╤═╝ ╘═╤═╝ ╚════╝
│ │ × ╟──┤ + ╟──┤ · ╟────┴───────────┐ └────┬────┘
│ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╔════╗ ┌───╖ │ ┌───╖ ╔════╗ │
│ ╔═╧══╗ │ │ ║ 48 ╟──┤ ≥ ╟──┴──┤ ≥ ╟──╢ 57 ║ ┌┴┐
│ ║ 10 ║ │ └┐ ╚════╝ ╘═╤═╝ ╘═╤═╝ ╚════╝ └┬┘
│ ╚════╝ │ └┐ ┌───┐ └────┬────┘ │
│ ┌────────┘ └┐ │ ├────────┘ ┌────────────┘
│ │ ╔════╗ ┌────╖ │ └─┬─┘ │
│ │ ║ 21 ╟──┤ >> ╟──┘ ├────────────┐ │
│ │ ╚════╝ ╘═╤══╝ ┌─┴─╖ ╔════╗ │ │
│ │ ┌─────────┴─╖ ┌─┤ ≠ ╟──╢ −1 ║ │ │
│ │ │ str→int p ╟────┤ ╘═══╝ ╚═╤══╝ │ │
│ │ ╘═╤═════════╝ │ ┌─┴─╖ │ │
│ │ ┌─┴─╖ ╔════╗ └────────┤ ? ╟───┘ │
│ └──┤ − ╟──╢ 48 ║ ╘═╤═╝ │
│ ╘═══╝ ╚════╝ ┌─┴─╖ │
└───────────────────────────────┤ ? ╟──────┘
╘═╤═╝
│
└──┘
╔═══╗ ┌───────────╖ ╓─────────╖
║ 0 ╟──┤ int→str p ╟──┐ ║ int→str ║
╚═══╝ ╘═════╤═════╝ │ ╙────┬────╜
┌────────────┴────┐ └──────┴─┐
│ ╔════╗ ┌────╖ │ ╔═══════╗ │
│ ║ 21 ╟──┤ << ╟─┘ ║ −8723 ║ │
│ ╚════╝ ╘══╤═╝ ╚╤══════╝ │
│ ┌┴┐ │ ╔═══╗ │
│ └┬┘ │ ║ 0 ║ │
│ └─┬────┘ ╚═╤═╝ │
│ ┌─┴─╖ ┌─┴─╖ │
└─────────────┤ ? ╟─────┤ < ║ │
╘═╤═╝ ╘═╤═╝ │
╔════╗ ┌─┴─╖ ├────┘
║ 48 ╟──┤ ? ╟───────┘
╚════╝ ╘═╤═╝
│
┌──────────────────┐ ╓┬───────────╖
│ ╔════╗ ┌────╖ ├──╫┘ int→str p ╟─────────────┐
│ ║ 21 ╟──┤ << ╟──┘ ╙────────────╜ ╔════╗ │
│ ╚════╝ ╘═╤══╝ ║ 10 ║ │
│ ┌┴┐ ╚═╤══╝ │
│ └┬┘ ┌───────────╖ ┌─┴──╖ │
│ ├──────────┤ int→str p ╟──┤ ÷% ╟──┐ │
│ ┌┴┐ ╘═════╤═════╝ ╘═╤══╝ ├─┘
│ └┬┘ ┌─┴─╖ │ │
│ ╔════╗ ┌─┴─╖ ┌───╖ ┌──┤ · ╟────────┘ │
│ ║ 48 ╟──┤ + ╟──┤ | ╟──┘ ╘═╤═╝ │
│ ╚════╝ ╘═══╝ ╘═══╝ ┌─┴─╖ │
└───────────────────────────┤ ? ╟──────────────┘
╘═╤═╝
│
└──┘
┌────────────────────┐
│ ╓───╖ │┌─────────┐
├──╢ ^ ╟──────┐ ││ ╓────╖ │ ┌──┐
│ ╙───╜ ┌┐ │ ┌┐ │└─╢ << ╟──┼───┴──┘
└───┬─────┤├──┴─┬─┤├─┘ ╙────╜ │
│ └┘ │ └┘
└────┬──────┘
│
╓────╖
┌──╢ >> ╟──┐
│ ╙────╜ │
│ ┌─┴─╖
│ ┌─┐ │ ~ ║
│ │ ╘═╤═╝
│ ┌─┴──╖ │
└──┤ << ╟──┘
╘════╝
╔═══╗ ┌───╖ ╓───╖
║ 0 ╟──┤ ≠ ╟────╢ ? ╟─┐
╚═══╝ ╘═╤═╝ ╙─┬─╜ │
│ ┌─┴─╖ │
│ ┌───┤ · ╟─┤
│ │ ╘═╤═╝ │
│ └──┬──┤ ┌┴┐
│ │ │ └┬┘
│ └─┬─┘
└──────────┘
╓───╖ ╓───╖
┌──╢ ≤ ╟──┐ ╓───╖ ┌──╢ ≥ ╟──┐
┌────────┐ │ ╙───╜ │ ┌─╢ > ╟──┐ │ ╙───╜ │
│ ╓───╖ │ │ │ │ ╙───╜ │ │ │
└─╢ < ╟──┼─────┐ │ ┌───╖ │ └────────┼─────┐ │ ┌───╖ │
╙───╜ ├──┐ │ └──┤ < ╟──┘ ├──┐ │ └──┤ > ╟──┘
└──┘ ╘═╤═╝ └──┘ ╘═╤═╝
┌┴┐ ┌┴┐
└┬┘ └┬┘
│ │
╒═══╕
│ · ├──
╘═╤═╛
┌───────────────────┐┌───────────────────┐
│ ╓───╖ ││ ╓───╖ │
├──╢ = ╟──┐ │├──╢ ≠ ╟──┐ │
│ ╙───╜ │ ││ ╙───╜ │ │
│ ┌───╖ │ ┌───╖ ││ ┌───╖ │ ┌───╖ │
└──┤ < ╟──┴──┤ < ╟──┘└──┤ < ╟──┴──┤ < ╟──┘
╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝
┌┴┐ ┌┴┐ ┌┴┐ ┌┴┐
└┬┘ └┬┘ └┬┘ └┬┘
└────┬────┘ └────┬────┘
┌┴┐ │
└┬┘
╓───╖
║ ♯ ║
╙─┬─╜ ╓───╖
┌──────────┴────────┐║ ♭ ║
╔════╗ ┌────╖ │ ╔═══╗ │╙─┬─╜
║ −1 ╟──┤ << ╟──┴─┬────╢ 1 ║ │ ┌┴┐
╚════╝ ╘══╤═╝ │ ╚═══╝ │ └┬┘
┌─┴─╖ ┌┴┐ ╔═══╗ ╔════╗ │┌─┴─╖
│ ♯ ║ └┬┘ ║ 0 ║ ║ −1 ║ ││ ♯ ║
╘═╤═╝ │ ╚═╤═╝ ╚══╤═╝ │╘═╤═╝
┌──┴─╖ ┌─┴─╖ ┌─┴─╖ ┌─┴─╖ │ ┌┴┐
│ << ╟──┤ ? ╟──┤ ? ╟──┤ = ║ │ └┬┘
╘══╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ │ │
╔═╧═╗ ┌┐ │ ┌┐ │ ├───┘
║ 1 ╟─┤├─┴─┤├──────────┘
╚═══╝ └┘ └┘
┌───────────┐ ┌───────────┐ ┌──────────────────┐
│ ╓───╖ ┌─┴──╖ │ ╓───╖ ┌─┴──╖ │ ┌───╖ ╓─────╖ │
└──╢ ÷ ╟──┤ ÷% ╟──┬──┐ └──╢ % ╟──┤ ÷% ╟───┐ └──┤ % ╟──╢ mod ╟──┤
╙───╜ ╘═╤══╝ └──┘ ╙───╜ ╘═╤══╝ │ ╘═╤═╝ ╙─────╜ │
│ ├──┐ │ ┌───╖ │ ╔═══╗
└──┘ ┌┴───┤ + ╟─────┘ ║ 0 ║
│ ╘═╤═╝ ╚═╤═╝
│ ┌─┴─╖ ┌─┴─╖
┌┴────┤ ? ╟────────┤ < ║
┌──────────────────────────────────┐ │ ╘═╤═╝ ╘═╤═╝
│ ╓────╖ ┌─┴─╖ └────────────────────┘
├───────────────────╢ ÷% ║ │ | ║
│ ╙──┬─╜ ╘═╤═╝
│ ┌───╖ ╔═══╗ ┌───╖ │ ┌───╖ ┌──┴──╖ ┌────┐
└──┤ > ╟──╢ 0 ╟──┤ < ╟─┴─┤ | ╟──┤ ÷%p ╟─────┤ │
╘═╤═╝ ╚═══╝ ╘═╤═╝ ╘═══╝ ╘══╤══╝ ┌─┴─╖ │
┌──┴─────────┬───┴──┐ ┌─┴──┐ │ ~ ║ │
┌┴┐ │ ┌┴┐ ─┐ ┌─┴─╖ │ ╘═╤═╝ │
└┬┘ ┌─┴─╖ └┬┘ │ │ ~ ║ │ ┌─┴─╖ │
└────┬─────┤ · ╟────┘ ┌─┴─╖ ╘═╤═╝ │ ┌─┤ ? ╟──┘
│ ╘═╤═╝ ┌──┤ ? ╟───┘ │ │ ╘═╤═╝
└───┬───┘ │ ╘═╤═╝ │ │
└──────────┤ └──────────┘ │
└─────────────────────┘
╔═══╗ ┌────╖
║ 1 ╟──┤ >> ╟────┐
╚═══╝ ╘═╤══╝ │
┌──┴──╖ ┌─┴─╖
╓┬────╖ ┌───┤ ÷%p ╟──┤ · ╟──┐
╟┘÷%p ╟──────┤ ╘══╤══╝ ╘═╤═╝ │
╙──┬──╜ ┌─┴─╖ ┌─┴─╖ │ │
┌─────────────────┴───────┤ · ╟──┤ · ╟─────┘ │
│ ╘═╤═╝ ╘═╤═╝ │
│ ╔═══╗ ┌────╖ ┌─┴─╖ ┌─┴─╖ │
│ ║ 1 ╟───────────┤ << ╟──┤ · ╟──┤ · ╟──────────┘
│ ╚═╤═╝ ┌┐ ┌───╖ ╘═╤══╝ ╘═╤═╝ ╘═╤═╝
│ ├───┤├─┤ + ╟────┘ │ └───────────────────┐
│ │ └┘ ╘═╤═╝ ┌─┴─╖ │
│ │ ┌──┴────────────┤ · ╟───────┐ ╔═══╗ ┌────╖ │
│ │ │ ┌───╖ ┌───╖╘═╤═╝┌───╖ │ ║ 1 ╟──┤ << ╟──┘
│ │ ┌──┴───┤ + ╟──┤ ~ ╟──┴──┤ ≥ ╟──┘ ╚═══╝ ╘═╤══╝
└───┤ │ ╘═╤═╝ ╘═══╝ ╘═╤═╝ │
│ │ ┌─┴─╖ │ ┌───╖ │
│ └──────┤ ? ╟──────────────┴────┤ − ╟──────┘
│ ╘═╤═╝ ╘═╤═╝
│ ╔═══╗ ┌─┴─╖ ╔═══╗ ┌─┴─╖
│ ║ 0 ╟──┤ ? ╟──────┐ ║ 0 ╟──┤ ? ╟──┐
│ ╚═══╝ ╘═╤═╝ │ ╚═══╝ ╘═╤═╝ │
│ └─ │ │ │
└────────────────────┤ │
└───────────────────┘
╓───╖ ╓───╖ ┌───╖ ╔═══╗
║ ~ ║┌──╢ − ╟───┐ ┌───────────┤ > ╟──╢ 0 ║
╙─┬─╜│ ╙───╜ ┌─┴─╖ ╓───╖ │ ╘═╤═╝ ╚═══╝
┌┴┐ │ │ ~ ║ ║ | ╟──┤ ┌───╖ ┌─┴─╖
└┬┘ │ ┌───╖ ╘═╤═╝ ╙───╜ │ ┌──┤ ~ ╟──┤ ? ╟──
┌─┴─╖└──┤ + ╟───┘ └─┤ ╘═══╝ ╘═╤═╝
│ ♯ ║ ╘═╤═╝ └───────────┘
╘═╤═╝ │
│
┌──────────────────────────────┐
│ ╓───╖ │
├───────╢ + ╟───────┐ │
┌─┴─╖ ╙───╜ │ │
┌──┤ · ╟─────────────────┴──┐ │
│ ╘═╤═╝ ┌─────────┴──┐ │
│ │ │ ┌────╖ ┌─┴─╖ │
│ │ └──┤ +p ╟──┤ · ╟──┴──────────────────┐
┌┴┐ ┌┴┐ ╘═╤══╝ ╘═╤═╝┌───╖ ╔═══╗ ┌───╖ │
└┬┘ └┬┘ │ └──┤ ≤ ╟──╢ 0 ╟──┤ ≥ ╟──┴─┐
│ │ │ ╘═╤═╝ ╚═══╝ ╘═╤═╝ │
│ ┌──┴─╖ ┌───╖ ┌┐ ┌─┴─╖ └──────┬──────┘ │
│ │ +p ╟──┤ ♯ ╟──┤├──┤ ? ╟─────────────────┤ │
│ ╘══╤═╝ ╘═══╝ └┘ ╘═╤═╝ │ │
│ │ │ │ │
└────┤ ┌─┴─╖ │
└───────────────────────────────────┤ < ╟───────────┘
╘═══╝
╓┬───╖
┌──╫┘+p ╟──┐
│ ╙────╜ │
┌────┴─────┬────┴────┐
│ ┌───┐ ┌─┴─╖ ┌┐ │
┌─┴─┤ ├──┤ · ╟──┬─┤├─┴─┐
│ └───┘ ╘═╤═╝ │ └┘ │
│ ┌───────┴───┬┘ │
│ ┌┴┐ ┌┴┐ │
│ └┬┘ └┬┘ │
│ ┌──┴─╖ ┌────╖ │ │
│ │ << ╟──┤ +p ╟─┘ │
│ ╘══╤═╝ ╘══╤═╝ │
│ ╔═╧═╗ │ │
│ ║ 1 ║ │ │
│ ╚═══╝ ┌─┴─╖ │
└──────────┤ ? ╟─────────┘
╘═╤═╝
│
┌────────────────────┐
│ ╓───╖ │
├──╢ × ╟──┐ │
┌─┴─╖╙───╜ │ │
│ ~ ║ │ │
╘═╤═╝ │ │
┌─┴─╖ │ ┌────╖ │
┌──┤ · ╟───────┴──┤ ×p ╟──┴─┐
│ ╘═╤═╝ ╘═╤══╝ │
│ ┌─┴──╖ ┌───╖ ┌─┴─╖ ┌─┴─╖
│ │ ×p ╟──┤ ~ ╟──┤ ? ╟───┤ ≤ ║
│ ╘═╤══╝ ╘═══╝ ╘═╤═╝ ╘═╤═╝
│ │ │ ╔═╧═╗
└────┘ ║ 0 ║
╚═══╝
┌────────────────────────────────┐
│ ╓┬───╖ │
│ ┌───────────╫┘×p ╟──┤
│ ┌─────────┴──────┐ ╙────╜ │
│ │ ╔═══╗ ┌─┴─╖ ┌────╖ │
│ └──┬────╢ 1 ╟──┤ · ╟──┤ << ╟──┘
│ ┌┴┐ ╚═══╝ ╘═╤═╝ ╘═╤══╝
│ └┬┘ │ │
│ ┌─┴─╖ ┌───╖ ┌─┴─╖ ┌─┴──╖
└───┤ ? ╟──┤ + ╟──┤ · ╟──┤ ×p ║
╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤══╝
╔═╧═╗ ┌─┴─╖ │ ┌─┴──╖ ╔════╗
║ 0 ╟──┤ ? ╟────┴────┤ << ╟──╢ −1 ║
╚═══╝ ╘═╤═╝ ╘════╝ ╚════╝
╔═══╗
║ ║
╚═╤═╝
┌┐ ┌─────────────────────┴─────────┐ ┌────────────────────┐ ┌────────────────────┐ ┌────────────────────┐ ┌───────────────┐
┌───────────────┘├────┴──────────┐ ┌────┴──────────┤ ┌────┴──────────┤ ┌────┴──────────┤ ┌────┴──────────┤ │
╔═══╗ ╔═══╗ │ ╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │╔═══╗ ╔═══╗ │
║ 2 ║ ║ 0 ║ │ ║ 2 ║ ║ 9 ║ │║ 2 ║ ║18 ║ │║ 2 ║ ║27 ║ │║ 2 ║ ║ 3 ║ │║ 2 ║ ║12 ║ │║ 2 ║ ║21 ║ │║ 2 ║ ║30 ║ │║ 2 ║ ║ 6 ║ │║ 2 ║ ║15 ║ │║ 2 ║ ║24 ║ │║ 2 ║ ║33 ║ │
╚═╤═╝ ╚═╤═╝ │ ╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │╚═╤═╝ ╚═╤═╝ │
│ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │ │ ┌─┴─╖ │
└────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘ └────┤ ʃ ╟───┘
╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝
┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖ ┌────┴────╖
│ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║ │ str→int ║
╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝ ╘════╤════╝
┌┴┐ ┌─┴─╖ ┌┐ ┌─┴─╖ │ ┌┴┐ ┌─┴─╖ ┌┐ ┌─┴─╖ │ ┌┴┐ ┌─┴─╖ ┌┐ ┌─┴─╖ │
│ └─────────────┤ · ╟───┤└──────┤ · ╟───┐ │ │ └────────────┤ · ╟───┤└──────┤ · ╟───┐ │ │ └────────────┤ · ╟───┤└──────┤ · ╟───┐ │
│ ┌───╖ ╘═╤═╝ │ ┌───╖ ╘═╤═╝ │ ┌───╖ │ │ ┌───╖ ╘═╤═╝ │ ┌───╖ ╘═╤═╝ │ ┌───╖ │ │ ┌───╖ ╘═╤═╝ │ ┌───╖ ╘═╤═╝ │ ┌───╖ │
└───┤ − ╟─────────┘ └─┤ − ╟───┘ └─┤ − ╟───┘ └───┤ − ╟────────┘ └─┤ − ╟───┘ └─┤ − ╟───┘ └───┤ − ╟────────┘ └─┤ − ╟───┘ └─┤ − ╟───┘
╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝ ╘═╤═╝
│ │ │ │ ┌───╖ │ │ │ ┌───╖ ┌─┴─╖┌┐ │
│ │ │ │ ┌┤ × ╟─┐ │ │ │ ┌────┤ × ╟────┤ · ╟┘├───────────┘
│ │ │ │ │╘═╤═╝ │ │ │ │ │ ╘═╤═╝ ╘═╤═╝┌┘
│ │ │ ┌─┴─╖ ┌──┘┌─┴─╖ └──────┴───────────┐ ┌─┴─╖ │ │ ┌─┴─╖ ┌───╖│ ┌┘
│ │ └────────────────────────┤ · ╟─┤ ┌┤ · ╟───────────────────┐└─┤ · ╟───────┐ │ │ ┌┤ · ╟─┤ × ╟┴┐│
│ │ ╘═╤═╝ └──┘╘═╤═╝ ┌────────┐ └┐ ╘═╤═╝ ┌─┴─╖ ┌─┴─╖┌─┴─╖ │╘═╤═╝ ╘═╤═╝ ││
│ │ ┌─┴─╖ ┌─┴─╖┌──────┤┌───╖ ┌─┴─╖ │ ┌─┴─╖ ┌┤ · ╟────────────┤ · ╟┤ · ╟─┘ │┌───╖│ ││
│┌───╖ └────────────────────────────────────────┤ · ╟─────┤ · ╟┘ ┌───╖└┤ × ╟─┤ · ╟┐└─┤ · ╟────┘╘═╤═╝ ╘═╤═╝╘═╤═╝ └┤ − ╟┘ ││
└┤ × ╟┐ ╘═╤═╝ ╘═╤═╝ ┌┤ − ╟┐╘═╤═╝ ╘═╤═╝│ ╘═╤═╝ │ ┌─┴─╖ │ ╘═╤═╝ ││
╘═╤═╝└─────────────┐ │ └───┘╘═╤═╝└──┘ │ └────┴───┐ │ ┌─┤ · ╟──┘ ┌─┴─╖┌───┘│
│ ┌─┴─╖ ┌───╖ │┌───╖ │┌───╖ └────────┐┌─┴─╖ ┌─┴─╖ │ ╘═╤═╝ ┌──────┤ · ╟┘ │
└──────────────┤ · ╟─┤ + ╟─────────────────────────────────┐ └┤ × ╟┐ └┤ × ╟───────┐ └┤ · ╟─┤ · ╟──────────┘ └─┐ │ ╘═╤═╝┌────┘
╘═╤═╝ ╘═╤═╝ │ ╘═╤═╝│ ╘═╤═╝ │ ╘═╤═╝ ╘═╤═╝┌──┐ ┌──────┐┌─┴─╖ │ ┌─┴─╖│
│ └──────┐ └────┐│ └─────┐ ┌─┴─╖ │ │┌───╖└──┘┌─┴─╖│ ┌───╖└┤ · ╟─┘ ┌────┤ · ╟┘
│ ╔═══╗┌───╖│┌─────┐ ││ ┌───╖ └─────┤ · ╟┐ │ └┤ × ╟────┤ · ╟┘┌┤ × ╟┐╘═╤═╝┌──┘ ╘═╤═╝
│ ║ 6 ╟┤ ÷ ╟┘│┌────┴────╖ │└──┤ + ╟─┐ ╘═╤═╝│ │ ╘═╤═╝ ╘═╤═╝┌┘╘═╤═╝│┌─┴─╖│ ┌──────┘
│ ╚═══╝╘═╤═╝ ││ int→str ║ │ ╘═╤═╝ └───────┘ └────┐ └──┐ │ ┌───╖ └──┘ │ └┤ · ╟┘┌─┘
│ └───┘╘════╤════╝ └─────┘ ┌─┴─╖┌─┴─╖ └──┤ − ╟────────┘ ╘═╤═╝ │
└──────────────────────────────────────────────────────────────────────┤ · ╟┤ · ╟┐ ╘═╤═╝┌─────────────┘ │
╘═╤═╝╘═╤═╝└────────────┘ │┌────────────────┘
│ └──────────────────┘│
└────────────────────────┘
71 13 82 09 29 09 29 64 67 93 08 06
42531