def  bf2un( s) :
	return  int ( "1" +'' .join ( bin( "><+-.,[]" .find ( n) ) [ 2 :] .zfill ( 3 ) for  n in  s) , 2 ) 
 
def  un2bf( n) :
	p= bin( n) [ 3 :] 
	return  '' .join ( "><+-.,[]" [ int ( p[ i:i+3 ] , 2 ) ] for  i in  range ( 0 , len ( p) , 3 ) ) 
 
def  main( ) :
	bfs =  [ "+." , ",[.,]" , "++++++[>++++++++++++<-]>.>++++++++++[>++++++++++<-]>+.+++++++..+++.>++++[>+++++++++++<-]>.<+++[>----<-]>.<<<<<+++[>+++++<-]>.>>.+++.------.--------.>>+." ] 
	uns =  [ 84 , 56623 , 239234107117088762456728667968602154633390994619022073954825877681363348343524058579165785448174718768772358485472231582844556848101441556 ] 
	print  "Brainfuck -> Unary\n --------------" 
	for  c in  bfs: print  bf2un( c) 
	print  "Unary -> Brainfuck\n --------------" 
	for  c in  uns: print  un2bf( c) 
 
if  __name__ ==  '__main__' :
	main( ) 
ZGVmIGJmMnVuKHMpOgoJcmV0dXJuIGludCgiMSIrJycuam9pbihiaW4oIj48Ky0uLFtdIi5maW5kKG4pKVsyOl0uemZpbGwoMylmb3IgbiBpbiBzKSwyKQoKZGVmIHVuMmJmKG4pOgoJcD1iaW4obilbMzpdCglyZXR1cm4gJycuam9pbigiPjwrLS4sW10iW2ludChwW2k6aSszXSwyKV1mb3IgaSBpbiByYW5nZSgwLGxlbihwKSwzKSkKICAgIApkZWYgbWFpbigpOgoJYmZzID0gWyIrLiIsIixbLixdIiwiKysrKysrWz4rKysrKysrKysrKys8LV0+Lj4rKysrKysrKysrWz4rKysrKysrKysrPC1dPisuKysrKysrKy4uKysrLj4rKysrWz4rKysrKysrKysrKzwtXT4uPCsrK1s+LS0tLTwtXT4uPDw8PDwrKytbPisrKysrPC1dPi4+Pi4rKysuLS0tLS0tLi0tLS0tLS0tLj4+Ky4iXQoJdW5zID0gWzg0LDU2NjIzLDIzOTIzNDEwNzExNzA4ODc2MjQ1NjcyODY2Nzk2ODYwMjE1NDYzMzM5MDk5NDYxOTAyMjA3Mzk1NDgyNTg3NzY4MTM2MzM0ODM0MzUyNDA1ODU3OTE2NTc4NTQ0ODE3NDcxODc2ODc3MjM1ODQ4NTQ3MjIzMTU4Mjg0NDU1Njg0ODEwMTQ0MTU1Nl0KCXByaW50ICJCcmFpbmZ1Y2sgLT4gVW5hcnlcbi0tLS0tLS0tLS0tLS0tIgoJZm9yIGMgaW4gYmZzOiBwcmludCBiZjJ1bihjKQoJcHJpbnQgIlVuYXJ5IC0+IEJyYWluZnVja1xuLS0tLS0tLS0tLS0tLS0iCglmb3IgYyBpbiB1bnM6IHByaW50IHVuMmJmKGMpCiAgIAppZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgoJbWFpbigp