00000000000000000000000000000000000000000+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++0000000000000000+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00000000000000000000000000000000000000000000000000++++++++++++++++++++++++++++++0000000000000000000000000