** encode **
* 0 for dot x 1
* plus 1 for dot x 4
* plus 2 for dot x 10
* plus 3 for newline
* minus 1 for * x 1
* minus 2 for * x 2
* minus 3 for eos
,>+++++++[-<------->]+<[
>,----------[>---
** case30 ** >>>->>>>->+>+>>-->+>>>>->+>->+>+++>-->>->>>-->++>>->+>>->+>+>>+++>->>>-->>->++>->>->+>>>-->>>->+>+++>>>>-->>-->++>->++>+>>>+++>+>->>>->++>++>+>>>>+++>+>>-->++>+>+>->+>+>>+++>++>++>+>->>->+>+>+++>++>++>+>->>>>->+>>>+++>+>+>->++>++>->+>>+++>+>>>-->-->++>+>+>>->+>>+++>+>>-->-->>->++>+>>->+>+>+++>+>->+>>-->++>+>>-->->>->>>>+++>+>-->>>->>->++>->+>+>>->>>>+++>->>-->->>-->->>>->+>+>->>->++>>>+++>-->-->>->+>-->+>>>>-->>-->++>>+++>+>+>->>->>>->+>>->>>->++>>>+++>+>+>->>->>>->+>>>->++>+>+++>+>+>->>>-->>->++>++>+++>+>->>>->+>-->+>>>>-->>>-->->+>>>>+++>+>>-->++>++>->+>>>>+++>++>++>+>>-->->+>>>>+++>++>++>++>+>>+++>++>++>++>+>>+++>-->++>++>++>>>>+++>-->++>++>++>>>>+++>++>++>++>+>>+++>++>++>->++>+>+++>++>+>+>>->>->++>-->>+++>++>+>+>>->>->++>>>>+++>++>+>+>>->>->++>>>>+++>++>+>+>>->>->++>>>>+++>++>+>+>-->>>->++>>>+++>++>+>+>-->>>->++>>>+++>++>+>+>-->->>>-->++>+++>++>++>>>>-->++>+++>+>-->->++>>>->>>>->++>>+++>>>>->>>->++>-->->++>+>>+++>->++>++>++>>-->>+++>->+>>->++>++>+>>-->->+++>->+>>->+>+>>->>>->+>>>-->+>>--
>>
]<[>---
** case3 ** >>>-->->>>>+++>>>>-->>>>+++>+>+>+++>+>+>+++>-->+>>>+++>+>-->>>+++>>>->>-->>>+++>-->>-->>>
>
]]>[----
** case10 ** >->>>->>>->+>>>>-->-->->>+++>>->>>-->+>+>-->>>->>+++>>>>-->+>+>->+>>>+++>>-->+>->+>-->->>-->-->+++>-->->>>>->>>->>>-->->>->>>>+++>->>-->++>+>>>+++>>-->>>>->>>>->+>+>>+++>>->+>>-->>->+>+>>+++>>>->>>->>>>-->+>+>>+++>>->>>>->>-->->>>->+>>>>+++>-->->>>>-->>>->>->>>>->>->>+++>->>->>>>->>>>->>->>>->+>+++>+>-->+>+>>->+>+++>+>-->+>>-->+>>>->+++>+>>->+>>>>->>>>->>->+++>>>>-->+>>>>-->->>-->>->+++>++>>-->-->+>>+++>++>>>-->+>>>+++>++>>->+>>->>>+++>+>-->++>-->>
>>
]<<
** decode **
+++[->+<
[-[-[-[-[
->+++++++++.[-]<
]
+>[<->++++++>>]<[->>]<<
]
+>[<->+++>>]<[->>]<<
]
>[>>+++++[-<+++++++++>]<+<[->.<]>[-]<]<
]
+>[<->+>>]<[->>]<<
]
>[>>++++++[-<+++++++>]<<---[+>.<]>[-]<]<
<+++]
KiogZW5jb2RlICoqCiogICAgICAgMCBmb3IgZG90IHggMQoqIHBsdXMgIDEgZm9yIGRvdCB4IDQKKiBwbHVzICAyIGZvciBkb3QgeCAxMAoqIHBsdXMgIDMgZm9yIG5ld2xpbmUKKiBtaW51cyAxIGZvciAqIHggMQoqIG1pbnVzIDIgZm9yICogeCAyCiogbWludXMgMyBmb3IgZW9zCiw+KysrKysrK1stPC0tLS0tLS0+XSs8Wwo+LC0tLS0tLS0tLS1bPi0tLQogKiogY2FzZTMwICoqID4+Pi0+Pj4+LT4rPis+Pi0tPis+Pj4+LT4rPi0+Kz4rKys+LS0+Pi0+Pj4tLT4rKz4+LT4rPj4tPis+Kz4+KysrPi0+Pj4tLT4+LT4rKz4tPj4tPis+Pj4tLT4+Pi0+Kz4rKys+Pj4+LS0+Pi0tPisrPi0+Kys+Kz4+PisrKz4rPi0+Pj4tPisrPisrPis+Pj4+KysrPis+Pi0tPisrPis+Kz4tPis+Kz4+KysrPisrPisrPis+LT4+LT4rPis+KysrPisrPisrPis+LT4+Pj4tPis+Pj4rKys+Kz4rPi0+Kys+Kys+LT4rPj4rKys+Kz4+Pi0tPi0tPisrPis+Kz4+LT4rPj4rKys+Kz4+LS0+LS0+Pi0+Kys+Kz4+LT4rPis+KysrPis+LT4rPj4tLT4rKz4rPj4tLT4tPj4tPj4+PisrKz4rPi0tPj4+LT4+LT4rKz4tPis+Kz4+LT4+Pj4rKys+LT4+LS0+LT4+LS0+LT4+Pi0+Kz4rPi0+Pi0+Kys+Pj4rKys+LS0+LS0+Pi0+Kz4tLT4rPj4+Pi0tPj4tLT4rKz4+KysrPis+Kz4tPj4tPj4+LT4rPj4tPj4+LT4rKz4+PisrKz4rPis+LT4+LT4+Pi0+Kz4+Pi0+Kys+Kz4rKys+Kz4rPi0+Pj4tLT4+LT4rKz4rKz4rKys+Kz4tPj4+LT4rPi0tPis+Pj4+LS0+Pj4tLT4tPis+Pj4+KysrPis+Pi0tPisrPisrPi0+Kz4+Pj4rKys+Kys+Kys+Kz4+LS0+LT4rPj4+PisrKz4rKz4rKz4rKz4rPj4rKys+Kys+Kys+Kys+Kz4+KysrPi0tPisrPisrPisrPj4+PisrKz4tLT4rKz4rKz4rKz4+Pj4rKys+Kys+Kys+Kys+Kz4+KysrPisrPisrPi0+Kys+Kz4rKys+Kys+Kz4rPj4tPj4tPisrPi0tPj4rKys+Kys+Kz4rPj4tPj4tPisrPj4+PisrKz4rKz4rPis+Pi0+Pi0+Kys+Pj4+KysrPisrPis+Kz4+LT4+LT4rKz4+Pj4rKys+Kys+Kz4rPi0tPj4+LT4rKz4+PisrKz4rKz4rPis+LS0+Pj4tPisrPj4+KysrPisrPis+Kz4tLT4tPj4+LS0+Kys+KysrPisrPisrPj4+Pi0tPisrPisrKz4rPi0tPi0+Kys+Pj4tPj4+Pi0+Kys+PisrKz4+Pj4tPj4+LT4rKz4tLT4tPisrPis+PisrKz4tPisrPisrPisrPj4tLT4+KysrPi0+Kz4+LT4rKz4rKz4rPj4tLT4tPisrKz4tPis+Pi0+Kz4rPj4tPj4+LT4rPj4+LS0+Kz4+LS0KID4+Cl08Wz4tLS0KICoqIGNhc2UzICoqID4+Pi0tPi0+Pj4+KysrPj4+Pi0tPj4+PisrKz4rPis+KysrPis+Kz4rKys+LS0+Kz4+PisrKz4rPi0tPj4+KysrPj4+LT4+LS0+Pj4rKys+LS0+Pi0tPj4+CiA+Cl1dPlstLS0tCiAqKiBjYXNlMTAgKiogPi0+Pj4tPj4+LT4rPj4+Pi0tPi0tPi0+PisrKz4+LT4+Pi0tPis+Kz4tLT4+Pi0+PisrKz4+Pj4tLT4rPis+LT4rPj4+KysrPj4tLT4rPi0+Kz4tLT4tPj4tLT4tLT4rKys+LS0+LT4+Pj4tPj4+LT4+Pi0tPi0+Pi0+Pj4+KysrPi0+Pi0tPisrPis+Pj4rKys+Pi0tPj4+Pi0+Pj4+LT4rPis+PisrKz4+LT4rPj4tLT4+LT4rPis+PisrKz4+Pi0+Pj4tPj4+Pi0tPis+Kz4+KysrPj4tPj4+Pi0+Pi0tPi0+Pj4tPis+Pj4+KysrPi0tPi0+Pj4+LS0+Pj4tPj4tPj4+Pi0+Pi0+PisrKz4tPj4tPj4+Pi0+Pj4+LT4+LT4+Pi0+Kz4rKys+Kz4tLT4rPis+Pi0+Kz4rKys+Kz4tLT4rPj4tLT4rPj4+LT4rKys+Kz4+LT4rPj4+Pi0+Pj4+LT4+LT4rKys+Pj4+LS0+Kz4+Pj4tLT4tPj4tLT4+LT4rKys+Kys+Pi0tPi0tPis+PisrKz4rKz4+Pi0tPis+Pj4rKys+Kys+Pi0+Kz4+LT4+PisrKz4rPi0tPisrPi0tPj4KID4+Cl08PAoqKiBkZWNvZGUgKioKKysrWy0+KzwKIFstWy1bLVstWwogICAgICAgLT4rKysrKysrKysuWy1dPAogICAgIF0KICAgICAgICs+WzwtPisrKysrKz4+XTxbLT4+XTw8CiAgICBdCiAgICAgICArPls8LT4rKys+Pl08Wy0+Pl08PAogICBdCiAgICAgICA+Wz4+KysrKytbLTwrKysrKysrKys+XTwrPFstPi48XT5bLV08XTwKICBdCiAgICAgICArPls8LT4rPj5dPFstPj5dPDwKIF0KICAgICAgID5bPj4rKysrKytbLTwrKysrKysrPl08PC0tLVsrPi48XT5bLV08XTwKPCsrK10K