Of0ck the language

Here's a quick twist on the classic esoteric programming language Brainf*ck.

Of0ck uses modified input symbols:

oO == > Increment the pointer.
oo == < Decrement the pointer.
0O == + Increment the byte at the pointer.
0o == - Decrement the byte at the pointer.
Oo == . Output the byte at the pointer.
OO == , Input a byte and store it in the byte at the pointer.
O0 == [ Jump forward past the matching ] if the byte at the pointer is zero.
o0 == ] Jump backward to the matching [ unless the byte at the pointer is zero.

Any lines beginning with * are treated as comments and all whitespace is insignificant.

As an example, a program that reads its input, reverses it and prints to the output looks like: OOO0oOOOo0ooO0Ooooo0 nice, eh? :)

Program:

Input:

Output:

Got a BF program, but want to execute it using Of0ck? No problem: paste the BF into the field below, hit translate and equivalent Of0ck will appear!

Translate BF to Of0ck:

I've uploaded the code to GitHub, here.