Skip to content

Instantly share code, notes, and snippets.

@Sasszem
Created April 25, 2021 20:49
Show Gist options
  • Save Sasszem/85232cf4768a99a1e19017daf94cec65 to your computer and use it in GitHub Desktop.
Save Sasszem/85232cf4768a99a1e19017daf94cec65 to your computer and use it in GitHub Desktop.
Simple BF interpreter to test the new 3.10 pattern matching
"""
BF interpreter in python, coded in half an hour just for fun
Warning! Python 3.10 is required!
"""
from sys import stdin, stdout
class BFPreter:
"""BD interpreter for a program"""
def __init__(self, program):
self.program = program
self.memory = {}
self.preprocessProgram()
def preprocessProgram(self):
pair = []
self.jumps = {}
for i,t in enumerate(self.program):
match t:
case "[":
pair.append(i)
case "]":
if not pair:
raise Exception("Malformed code!")
self.jumps[i] = pair[-1]
self.jumps[pair[-1]]=i
pair = pair[:-1]
case _:
pass
def run(self):
IP = 0
MP = 0
while IP < len(self.program):
match self.program[IP]:
case "+":
self.memory[MP] = self.memory.get(MP, 0) + 1
case "-":
self.memory[MP] = self.memory.get(MP, 0) - 1
case ">":
MP += 1
case "<":
MP -= 1
case ".":
stdout.write(chr(self.memory.get(MP, 0)))
case ",":
self.memory[MP] = ord(stdin.read(1))
case "[":
if self.memory.get(MP, 0)==0:
IP = self.jumps[IP] + 1
continue
case "]":
if self.memory.get(MP, 0)!=0:
IP = self.jumps[IP] + 1
continue
IP += 1
if __name__=='__main__':
# Hello World! example
# code = "++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++."
# another example (by Clifford Wolf)
code = """>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>+++++++++++++++++++++++++++.+++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++.-------------------.------------------------------------------
---.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-----------
------------------------------.++++++++++++++++++++++++.[-]+++++++++++++++++++++
++++++.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.--------
---------------------------------.+++++++++.---------.+++++.+++++++++++++++++.++
++++++++++.+++++++++++++++++++++++++++.++++++++.------------------.+++++++++++++
.+.-----------------------------------------------------------------------------
------.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++.---------.---------------------------------------------------------------
-------.++++++++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++++.+++++
++++++++.+.------.--------------------------------------------------------------
-----------.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++.+++++.--------------------------------------------------------------------
----------.++++++++++++++++++++++++++++++++++.++++++++++++++++++++++++++++++++++
++++++++++++++.-----------------.++++++++.+++++.--------.-----------------------
-------------------------------------.++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++.++++++++.[-]+++++++++++++++++++++++++++.++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++.---------------------------------------
-.++++++++.----------.++++.+++++++++++++++++++.+++++++++++++++.+++++++++++++++++
++++++++++.---------.+++++++++++..---------------.+++++++++.--------------------
----------------------------------------------------------.+++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++.----------
-------------------------------------------------------------------------------.
+++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++++++++++++++++++++.--
-.---..+++++++++.+++.--------------.--------------------------------------------
------------------------.+++++++++++++++++++++++++++++++++++++++++++++++++++++++
.++++++++++++++++++++++++.---.------.-------------------------------------------
---------------------------.++++++++++++++++++++++++++++.+++++++++++++++++++++++
+++++++++++++++++++++.++++++++++++..----.---------------------------------------
---------------.-----------..+++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++...--------------------------------------------------------
-----------------.+++++++++++++++++++++++++++++++++++++++++++++++++++++.++++++++
+.---.---..+++++++++.+++.--------------.----------------------------------------
--------------.+++++++++++++++++++++++++++++++++++++++++++++++++++.+++++++++++++
++++++.---------------------------------------------------------------------.+++
++++++++++++++++++++++++++++++++++++++++++++++++.++++.---.+++++++++++++.+++++.--
--------------------------------------------------------------------.+++++++++++
++++.[-]>+++++++++>+++>>++++++++++[->>>+<<<]>>>[-<<<+>>+>]<[->+<]>[[-<+>]<<<<+>>
>>]<<<<[>[-]+++++++++++++++++++++++++++++++++++++++++++++<<<<[->>>>>+<<<<<]>>>>>
[[-<<<<<+>>>>>]<+++++++++++++++++++++++++++++++++++++++++++>]<<<[>>>[-]<<<[->>>+
<<<]>>>[[-<<<+>>>]<<<->>>]++++++++++++++++>[-]++++++++++++++>>>>>>[-]<<<<<<<<<<[
->>>>>>>>>>+<<<<<<<<<<]>>>>>>>>>[-]>[-<<<<<<<<<<+>>>>>>>>>+>]<<<+>>[->>>+<<<]>>>
[[-<<<+>>>]]<<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<<+++++>>>>]>+<<<<<<<<[-
>>>>>>>>>>+<<<<<<<<<<]>>>>>>>>>[-]>[-<<<<<<<<<<+>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<
+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[
-]<<[->>>+<<<]>>>[[-<<<+>>>]]<]<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<[->+<]>[[-<+>]<
<<<[-]>>>>]<<<<[[-]<<<++++++++++>>>]+++++++++++++++++++++++++>>[-]<<<<<<<<<[->>>
>>>>>>+<<<<<<<<<]>>>>>>>>[-]>[-<<<<<<<<<+>>>>>>>>+>]<[<[->>+<<]>>[-<<+<<+>>>>]<-
]<[-]<<[->>+<<]>>[-<<+<<+>>>>]<<<<<<<<[->>>>>>>>+<<<<<<<<]>>>>>>>>[-<<<<<<<<+>>>
>->>>>]<<<<<<<<[->>>>>>>>+<<<<<<<<]>>>>>>>>[-<<<<<<<<+>>>>->>>>]>++>>[-]<<<<<<<<
<<[->>>>>>>>>>+<<<<<<<<<<]>>>>>>>>>>[-<<<<<<<<<<+>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<
<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->
[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]
<<<<[-]>>>>]<<<<[[-]<<<<----->>>>]<<<<<<<<<[->>>>>>>>>+<<<<<<<<<]>>>>>>>>>[-<<<<
<<<<<+>>>>>>->>>]+++++++++++++++++++++++++++.+++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++.<<<[->>>>>+<<<<<]>>>>[-]>[-<<<<<+>>>>+>]>>>+++++++
+++<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>
+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[
[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<<]>[->+<]>[[-<+>]<<<[->>>>+<<<<]>
>>>[-<<<<+<<<+>>>>>>>]<<[->>+<<]>>[-<<+<<<<<->>>>>>>]<]<<<[-]++++++++++>>[-]<<<<
<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>
]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+
<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+>>]<[-]>
]<[[-]<<<<<<<+>>>>>>>]<<]<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<
+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-
<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<
<+>>]<]<]<<]<<<[-]>>>>[->+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[-<<<<+<<+>>>>>>]<<[->>+<
<]>>[-<<+<<<<->>>>>>]<]<<<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<
+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->
>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>
>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+>>]<[-]>]<<<]<[-]++++++++++>>[-]<<[-]+++
+++++++[-]>+[[-]<<<[->>>>+<<<<]>>>>>+<[[-<<<<+>>>>]<<<<+++++++++++++++++++++++++
+++++++++++++++++++++++.<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>
-<]>[[-]<<<<<<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>]<<]<<<<<<-
-------------------------------.>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+
>]>>>++++++++++<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+
>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[-
>>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<<]>[->+<]>[[-<+>]<<<[
->>>>+<<<<]>>>>[-<<<<+<<<+>>>>>>>]<<[->>+<<]>>[-<<+<<<<<->>>>>>>]<]<<<[-]+++++++
+++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>
>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->-
>[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[
-<<+>>]<[-]>]<[[-]<<<<<<<+>>>>>>>]<<]<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>
>>>>[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>
>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>
[[-<<<+>>>]<<+>>]<]<]<<]<<<[-]>>>>[->+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[-<<<<+<<+>>>
>>>]<<[->>+<<]>>[-<<+<<<<->>>>>>]<]<<<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>
>>>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<
<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<
[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+>>]<[-]>]<<<]<[-]++++++++++>
>[-]<<[-]++++++++++[-]>+[[-]<<<[->>>>+<<<<]>>>>>+<[[-<<<<+>>>>]<<<<+++++++++++++
+++++++++++++++++++++++++++++++++++.<+++++++++++++++++++++++++++++++++++++++++++
+++++.>>>>>>-<]>[[-]<<<<<<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>
>]<<]<<<<<<+++++++++++++.>++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++>>[-]<<<<<<<<[->>>>>>>>+<<<<<<<<]>>>>>>>[-]>[-
<<<<<<<<+>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<[-]+>>[->>>+<<<]>>>[[-<<<+>>>]<
<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<
<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<[-]+<[[-]>>+++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++.<-<]>[[-]<<<<<<.>>>>>>]<<<<<<<<<[->>>>>>>>+<<<<<<<<]
>>>>>>[-]>>[-<<<<<<<<+>>>>>>+>>]<<[->>+<<]>>[[-<<+>>]<<->>]<<[<<<..>>>-]<<<.<<<[
->>>>>>>>+<<<<<<<<]>>>>>>>>[-<<<<<<<<+>>>>>>+>>]<<[->>+<<]>>[[-<<+>>]<<->>]<<[<<
<..>>>-]>>>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++>>[-]<<<<<<<<[->>>>>>>>+<<<<<<<<]>>>>>>>[-]>[-<<<<<<<<+>>>>>>
>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<
<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<
+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<[-]+<[[-]>>+++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++.<-<]>[[-]<<<<<<.>>>>>>]<<<<<<<<]>>>[-]<<<<<[->>>>>+<<<<<]>>>>>[[-<<<<<
+>>>>>]>[-]<<<<<[->>>>>+<<<<<]>>>>>[-<<<<<+<<<+>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>+>>>>>>>>>]<<<<<<<<<[<<<<<[-]+>>>>>>[<<<<+>>>>-]<-[<<<<+>>
>>-]<<<<]>[<<<+>>>-]<<[>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[->>>>>+<<<<<]>>>>>[[-<<<<<+>>>>>]<<<<<->>>>>]<]<<
<<<+>>+>>[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<<[->>>+
<<<]>>>[-<<<+>>+>]<<<<[-]>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+
>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[
->+<]>[[-<+>]<<<<+>>>>]<<<<]<<<[-]>+>[-]++>++++++++>[-]+>+[>>>++++>>[-]<<<<<<[->
>>>>>+<<<<<<]>>>>>[-]>[-<<<<<<+>>>>>+>]>[-]<<<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<
<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<
<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<+>>>>]<<<<[>[-]<<<
<<[->>>>>+<<<<<]>>>>>[[-<<<<<+>>>>>]>>[-]>>>+<<<<<<<<<[->>>>>>>>>>>+<<<<<<<<<<<]
>>>>>>>>>>>[-<<<<<<<<<<<+>>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>>>>[-]<<<
[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<
]>>>[[-<<<+>>>]]<]<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<+>+>>]>[-]+++<<<<<
<<<<[->>>>>>>>>>>+<<<<<<<<<<<]>>>>>>>>>>[-]>[-<<<<<<<<<<<+>>>>>>>>>>+>]<<[->>>+<
<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]
<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+
<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]<<<+>>+>]<<<[->>>+<<<]>>>[[-<<<+>>>]>[-]>>[-]<<<<<
<<<<<<<<<<[->>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<+>>>
>>>>>>>>>>>+>]<[<+>-]<<<<<<<<<<<<<[->>>>>>>>>>>>>>+<<<<<<<<<<<<<<]>>>>>>>>>>>>>>
[-<<<<<<<<<<<<<<+>>>>>>>>>>>>>+>]<[<+++>-]<<<<<<<<<<<<[->>>>>>>>>>>>>+<<<<<<<<<<
<<<]>>>>>>>>>>>>>[-<<<<<<<<<<<<<+>>>>>>>>>>>>+>]<[<+++++++++>-]<[->>+<<]<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<
<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<
<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<[<<<<<[-]+>>>>>>[<<<<+>>>>-]<-[<<<<+>>>>-]<<<<]<<[-]>>>[<<<+>>>-]<
<[>>>>]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[->>>>>>>>>>>>+<<<<<<<<
<<<<]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
]<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>[-<<<<<<<<<
<<<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>>[<<<<+>
>>>-]<-[<<<<+>>>>-]<<<<]<<[-]>>>[<<<+>>>-]<<[>>>>]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[->>>>>>>>>>>+<<<<<
<<<<<<]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>]<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>[-<<<<<<
<<<<<<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>>[<<<<+>>>>-]<-[<<<<+>>>>-]<<<<]<<[-]>>>[<<<+
>>>-]<<[>>>>]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>>>>>>>>>>]<<[->>
+<<]>>[[-<<+>>]>[-]<<<<<<<<<<<<[->>>>>>>>>>>>+<<<<<<<<<<<<]>>>>>[-]>>>>>>>[-<<<<
<<<<<<<<+>>>>>+>>>>>>>]<<<<<<<<<<<[->>>>>>>>>>>+<<<<<<<<<<<]<[-]>>>>>>>>>>>>[-<<
<<<<<<<<<+<+>>>>>>>>>>>>]<<<<<<<[->>>>>>>+<<<<<<<]<<<<[-]>>>>>>>>>>>[-<<<<<<<+<<
<<+>>>>>>>>>>>]<<<<<<<<<<->[-]>+>>>>>>>]<[->+<]>[[-<+>]>[-]<<<<<<<<<<<<[->>>>>>>
>>>>>+<<<<<<<<<<<<]>>>>>[-]>>>>>>>[-<<<<<<<<<<<<+>>>>>+>>>>>>>]<<<<<<<<<<<<<[->>
>>>>>>>>>>>+<<<<<<<<<<<<<]>[-]>>>>>>>>>>>>[-<<<<<<<<<<<<<+>+>>>>>>>>>>>>]<<<<<<<
[->>>>>>>+<<<<<<<]<<<<<<[-]>>>>>>>>>>>>>[-<<<<<<<+<<<<<<+>>>>>>>>>>>>>]<<<<<<<<<
<->[-]>+>>>>>>>]<<<<]>[-]++>>[-]<<<<<<<[->>>>>>>+<<<<<<<]>>>>>>[-]>[-<<<<<<<+>>>
>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>>>>[-]<<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+
<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[
-<<<+>>>]<<+>>]<]<]<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<[->+<]>[[-<+>]<<<<[-]>>>>]<
<<<[[-]>>>>++<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>[-]>
[-<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>+>]<<<+>>[->>>+<<<]>>>[[-<<<+>>>]]<<<[->>+<<]>
>[[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>]<]>+<<<<<<<<<<<<<<[->>>>>>
>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>[-]>[-<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>
>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<
<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]]<]<<[->>+<<]>>[[-<<+>>]<<<<
[-]>>>>]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]>[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>
>>>]<]>[-]++>>[-]<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>
>>>>[-]>[-<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[-
>>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>
>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<
[[-]>[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>]<]>[-]>>[-]<<<<<<<<<<<<<<<<[->>>>>>>>>>>>
>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>+>]<<<+>
>[->>>+<<<]>>>[[-<<<+>>>]]<<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>
>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>-[<<<<+>>>>-]<<<<]<<[->>+>+<<<]>
>[-<<+>>]<[>>[->>>>+<<<<]>>]>>[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>[-]
>>>>>[-<<<<<<<<<<<<<<<<+>>>>>>>>>>>+>>>>>]<]>+<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<
<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>[-]>[-<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>+>]<<[->>>+
<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>
]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]]<]<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<[->
+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-]<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>-[<<<<+>>>>-]<<<
<]<<[->>+>+<<<]>>[-<<+>>]<[>>[->>>>+<<<<]>>]>>[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>[-]>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>>]<]>[-]++>>[-
]<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>[-]>[-<<<<<<
<<<<<<<<<<+>>>>>>>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<
<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[
->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>-[<<<<+>>>>-]<<<<]<<[->>+>+<
<<]>>[-<<+>>]<[>>[->>>>+<<<<]>>]>>[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-]>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>+>>>>>]<]>[-]>>[-]<<<<<<<<<<<<<<[->>>>>>>>>>>>>>+<<<<<<<<<<<<<<]>>>>>>>>>>>>
>>[-<<<<<<<<<<<<<<+>>>>>>>>>>>>>+>]<<<+>>[->>>+<<<]>>>[[-<<<+>>>]]<<<[->>+<<]>>[
[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<<[->>>>>+<<<<<]<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>[-<<
<<<+<<<<<<<<<<<+>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<[<<<<
<[-]+>>>>>>[<<<<+>>>>-]<-[<<<<+>>>>-]<<<<]<<[-]>>>[<<<+>>>-]<<[>>>>]<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>]>+<<<<<<<<<<<<[->>>>>>>>>>>>>>+<<<<<<<<<<<<<<]>>>>>>>>>>>>>[-]>[-<<<<<<<<<<<<
<<+>>>>>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[-
>>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]]<]<<[->>+<<]
>>[[-<<+>>]<<<<[-]>>>>]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]>[-]<<<<<[->>>>>+<<<<<
]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>>[<<<<+>>>>-]
<-[<<<<+>>>>-]<<<<]<<[-]>>>[<<<+>>>-]<<[>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]>[-]++>>[-]<<<<<<<
<<<<<<<[->>>>>>>>>>>>>>+<<<<<<<<<<<<<<]>>>>>>>>>>>>>[-]>[-<<<<<<<<<<<<<<+>>>>>>>
>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>
>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>
>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]>[-]<<<<<[->>>>>+<<<<<]<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[
->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]
+>>>>>>[<<<<+>>>>-]<-[<<<<+>>>>-]<<<<]<<[-]>>>[<<<+>>>-]<<[>>>>]<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]>[-]>>[-]<<<<<<<<<<<<<<[->>>>>>>>>>>>>>+
<<<<<<<<<<<<<<]>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<+>>>>>>>>>>>>>+>]<<<+>>[->>>+<<<]>>
>[[-<<<+>>>]]<<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>]<
]>+<<<<<<<<<<<<[->>>>>>>>>>>>>>+<<<<<<<<<<<<<<]>>>>>>>>>>>>>[-]>[-<<<<<<<<<<<<<<
+>>>>>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>
>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]]<]<<[->>+<<]>>
[[-<<+>>]<<<<[-]>>>>]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]>[-]<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>+>>>]<]>[-]++>>[-]<<<<<<<<<<<<<<[->>>>>>>>>>>>>>+<<<<<<<<<<<<<<]>>>>
>>>>>>>>>[-]>[-<<<<<<<<<<<<<<+>>>>>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[
->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]
>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<
<[[-]>[-]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>]<]<[->>>>[-]<<<<[->>>>+<<<<]>>>>>[-]+<[[
-<<<<+>>>>]<<<<<<<<<<<<<<<<[->>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>
>>>>>[-<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>+>>>>>]<<<<<<<<[->>>>>>>>+<<<<<<<<]>>>>[-
]>>>>[-<<<<<<<<+>>>>+>>>>]<<<++++++++++++++++++++++++++++++++>>-<]>[[-]<<<<<<<<<
<<<<<<[->>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<]>>>>>>>>>>>[-]>>>>>[-<<<<<<<<<<<<<<<<+
>>>>>>>>>>>+>>>>>]<<<<<<<[->>>>>>>+<<<<<<<]>>>[-]>>>>[-<<<<<<<+>>>+>>>>]<<<[-]++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++>>]<++++++++++++++++>++++++++++++++>>>>>>[-]<<<<<<<<<<[->>>>>>>>>>+<<<<<<<
<<<]>>>>>>>>>>[-<<<<<<<<<<+>>>>>>>>>+>]<<<+>>[->>>+<<<]>>>[[-<<<+>>>]]<<<[->>+<<
]>>[[-<<+>>]<<<<[-]>>>>]<<<<[[-]<<<<+++++>>>>]>+<<<<<<<<[->>>>>>>>>>+<<<<<<<<<<]
>>>>>>>>>[-]>[-<<<<<<<<<<+>>>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<
]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<
<+>>>]]<]<<[->>+<<]>>[[-<<+>>]<<<<[-]>>>>]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]<<<
++++++++++>>>]+++++++++++++++++++++++++>>[-]<<<<<<<<<[->>>>>>>>>+<<<<<<<<<]>>>>>
>>>[-]>[-<<<<<<<<<+>>>>>>>>+>]<[<[->>+<<]>>[-<<+<<+>>>>]<-]<[-]<<[->>+<<]>>[-<<+
<<+>>>>]<<<<<<<<<<<[->>>>>>>>>>>+<<<<<<<<<<<]>>>>>>>>>>>[-<<<<<<<<<<<+>>>>>>>->>
>>]<<<<<<<<<<<[->>>>>>>>>>>+<<<<<<<<<<<]>>>>>>>>>>>[-<<<<<<<<<<<+>>>>>>>->>>>]>+
+>>[-]<<<<<<<<<<[->>>>>>>>>>+<<<<<<<<<<]>>>>>>>>>>[-<<<<<<<<<<+>>>>>>>>>+>]<<[->
>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<
+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<
[->+<]>[[-<+>]<<<<[-]>>>>]<<<<[[-]<<<<----->>>>]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<
<<<<+>>>->>>]+++++++++++++++++++++++++++.+++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++.<<<[->>>>>+<<<<<]>>>>[-]>[-<<<<<+>>>>+>]>>>++++++++++<
<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<
]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<
<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<<]>[->+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[
-<<<<+<<<+>>>>>>>]<<[->>+<<]>>[-<<+<<<<<->>>>>>>]<]<<<[-]++++++++++>>[-]<<<<<<[-
>>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[
->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]
>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+>>]<[-]>]<[[
-]<<<<<<<+>>>>>>>]<<]<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>
>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+
>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>
]<]<]<<]<<<[-]>>>>[->+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[-<<<<+<<+>>>>>>]<<[->>+<<]>>
[-<<+<<<<->>>>>>]<]<<<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>
>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<
<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-
<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+>>]<[-]>]<<<]<[-]++++++++++>>[-]<<[-]+++++++
+++[-]>+[[-]<<<[->>>>+<<<<]>>>>>+<[[-<<<<+>>>>]<<<<+++++++++++++++++++++++++++++
+++++++++++++++++++.<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>-<]>
[[-]<<<<<<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>]<<]<<<<<<-----
---------------------------.>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]>>
>++++++++++<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>
]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+
<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<<]>[->+<]>[[-<+>]<<<[->>>
>+<<<<]>>>>[-<<<<+<<<+>>>>>>>]<<[->>+<<]>>[-<<+<<<<<->>>>>>>]<]<<<[-]++++++++++>
>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-
<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]
<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+
>>]<[-]>]<[[-]<<<<<<<+>>>>>>>]<<]<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>
[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<
<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<
<<+>>>]<<+>>]<]<]<<]<<<[-]>>>>[->+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[-<<<<+<<+>>>>>>]
<<[->>+<<]>>[-<<+<<<<->>>>>>]<]<<<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>
[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>
>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>
>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]+<[->>+<<]>>[[-<<+>>]<[-]>]<<<]<[-]++++++++++>>[-]
<<[-]++++++++++[-]>+[[-]<<<[->>>>+<<<<]>>>>>+<[[-<<<<+>>>>]<<<<+++++++++++++++++
+++++++++++++++++++++++++++++++.<+++++++++++++++++++++++++++++++++++++++++++++++
+.>>>>>>-<]>[[-]<<<<<<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>]<<
]<<<<<<+++++++++++++.>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++>>[-]<<<<<<<<[->>>>>>>>+<<<<<<<<]>>>>>>>[-]>[-<<<<
<<<<+>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<[-]+>>[->>>+<<<]>>>[[-<<<+>>>]<<[->
>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>
>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<[-]+<[[-]>>+++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++.<-<]>[[-]<<<<<<.>>>>>>]<<<<<<<<<<<<[->>>>>>>>>>>+<<<<<<<
<<<<]>>>>>>>>>[-]>>[-<<<<<<<<<<<+>>>>>>>>>+>>]<<[->>+<<]>>[[-<<+>>]<<->>]<<[<<<.
.>>>-]<<<.<<<<<<[->>>>>>>>>>>+<<<<<<<<<<<]>>>>>>>>>>>[-<<<<<<<<<<<+>>>>>>>>>+>>]
<<[->>+<<]>>[[-<<+>>]<<->>]<<[<<<..>>>-]>>>+++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++++++++++>>[-]<<<<<<<<[->>>>>>>>+<<<<<
<<<]>>>>>>>[-]>[-<<<<<<<<+>>>>>>>+>]<<[->>>+<<<]>>>[-<<<+>>+>]<<<<+>>[->>>+<<<]>
>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+
>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<[-]>>>>]<<<[-]+<[[-]>
>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++.<-<]>[[-]<<<<<<.>>>>>>]<<<<<<<<<]>[-]+
+++++++++.[-]+>[-]+>[-]+++++++++++++++++++++++++++.+++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++.>>[-]<<<[->>>+<<<]>>[-]>[-<<<+>>+>]>>>++++++
++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>
]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]]<<]>[->
+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[-<<<<+<<<+>>>>>>>]<<[->>+<<]>>[-<<+<<<<<->>>>>>>]
<]<<<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>
>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]
<<+>>]<]<[<<->->[-]]+<[->>+<<]>>[[-<<+>>]<[-]>]<<<]<[-]++++++++++>>[-]<<[-]+++++
+++++[-]++++++++++[-]++++++++++[-]>+[[-]>>+[[-]<<<<<<+++++++++++++++++++++++++++
+++++++++++++++++++++.>>>>>>]<<]<<<<<<--------------------------------.>>[-]<<<<
[->>>>+<<<<]>>>>[-<<<<+>>>+>]>>>++++++++++<<<<[->>>>>>+<<<<<<]>>>>>>[-<<<<<<+>>>
>>+>]<[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+
>>>]<<+>>]<]<[<<->->[-]]<<]>[->+<]>[[-<+>]<<<[->>>>+<<<<]>>>>[-<<<<+<<<+>>>>>>>]
<<[->>+<<]>>[-<<+<<<<<->>>>>>>]<]<<<[-]++++++++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>
>>[-<<<<<<+>>>>>+>]<<<<<<[-]>>>>>[<[->>>+<<<]>>>[-<<<+>>+>]<<[->>>+<<<]>>>[[-<<<
+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]]+<[->>+<<]>>[[-<<+>>]<[-]>]<<
<]<[-]++++++++++>>[-]<<[-]++++++++++[-]++++++++++[-]++++++++++[-]>+[[-]>>+[[-]<<
<<<<++++++++++++++++++++++++++++++++++++++++++++++++.>>>>>>]<<]<<<<<<+++++++++++
++.<<[-]>[-]>[-]<<<<<<<]<<<<+>>>>++++>>[-]<<<<<<[->>>>>>+<<<<<<]>>>>>[-]>[
-<<<<<<+>>>>>+>]>[-]<<<[->>>+<<<]>>>[-<<<+>>+>]<<<<[-]>>[->>>+<<<]>>>[[-<<<+>>>]
<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<
<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<+>>>>]<<<<]<<-[->>+<<]>>[[-<<+>>]<
<<<<<<<-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-]<<<<<<<<<[->>>>>>>>>+<<<<<<<<<]>>>>>>>>>[-<<<<<<<
<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<
<<<<[-]+>>>>>-[<<<<+>>>>-]<<<<]<<[->>+>+<<<]>>[-<<+>>]<[>>[->>>>+<<<<]>>]>>[->>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[-]>>>>>>>
>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>+>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[->>>>>>>>>+<<<<<<<<<]>>>>>>
>>>[-<<<<<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>-[<<<<+>>>>-]<<
<<]<<[->>+>+<<<]>>[-<<+>>]<[>>[->>>>+<<<<]>>]>>[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>[-]>>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<[-]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>[->>>>>>>>>+<<<<
<<<<<]>>>>>>>>>[-<<<<<<<<<+<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<+>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<[<<<<<[-]+>>>>>-[<<<<+>>>>-]<<<<]<<[->>+>+<<<]>>[-<<+>>]<[
>>[->>>>+<<<<]>>]>>[->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>[-]>>>>[-<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>+>>>>]<<<<<<<[-]>[-]>>>>>>>+++
+++++[->>+<<]>>[-<<+>+>]<<<<<<<<<<<[->>>>>>>>>>>>+<<<<<<<<<<<<]>>>>>>>>>>>>[-<<<
<<<<<<<<<+>>>>>>>>>>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>
>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[-
>+<]>[[-<+>]<<<<+>>>>]<<<<[<<<<<<<<--------->>+>>>>>>>[-]++++++++>>[-]<<[->>+<<]
>>[-<<+>+>]<<<<<<<<<<<[->>>>>>>>>>>>+<<<<<<<<<<<<]>>>>>>>>>>>>[-<<<<<<<<<<<<+>>>
>>>>>>>>+>]<<<<[-]>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[
<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[
[-<+>]<<<<+>>>>]<<<<]>[-]++[->>+<<]>[-]>[-<<+>+>]<<<<<<<<<<<[->>>>>>>>>>>>+<<<<<
<<<<<<<]>>>>>>>>>>>>[-<<<<<<<<<<<<+>>>>>>>>>>>+>]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->
>>+<<<]>>>[[-<<<+>>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>
>[[-<<<+>>>]<<+>>]<]<]<[->+<]>[[-<+>]<<<<+>>>>]<<<<[<<<<<<<<--->+>>>>>>>>[-]++>>
[-]<<[->>+<<]>>[-<<+>+>]<<<<<<<<<<<[->>>>>>>>>>>>+<<<<<<<<<<<<]>>>>>>>>>>>>[-<<<
<<<<<<<<<+>>>>>>>>>>>+>]<<<<[-]>>[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>
>>]<<+>>]<]<[<<->->[-]<<[->>>+<<<]>>>[[-<<<+>>>]<<[->>>+<<<]>>>[[-<<<+>>>]<<+>>]
<]<]<[->+<]>[[-<+>]<<<<+>>>>]<<<<]<<<<+>>>]<<]>>>>>>>>>>>>>>>>>>>>>>>>"""
B = BFPreter(code)
B.run()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment