+-+-++++---++-+-+---+++--++---+++-+-+-+-++-+---+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----+++++++-++-+++++++---------+--+--++--+--+------++-++++------+-+-++++---++-+-+---+++--++---+++-+-+-+-++-+-+-+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-++-++++---------+--+--++--+--+------++-++-+------+-+-++++--+++-+-+---+++--++---+-+-+-+-+-++-+---+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-++-++++------------+--++--+--+------+--++-+------+-+-++++---++-+-+---+++--++---+++-+-+-+-++-+---+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-+++++++---------+--+--++--+--+------++-++-+------+-+-++++---++-+-+---+++--++---+++-+-+-+-++-+-+-+++---+-+-+--+-++++--+--+---++---+--+--+++---++-+----++-++++-++-++-++++---------+--+--++--+--+------++-++-+-------+-+----+++--+-+-+++---++--+++---+-+-+-+--+-+++---+++-+---++-+----++-++-++---+++-++-++---+++--+-++++--+----+--+-------+++++++++-++-++--++-++-++++++--+--+-++++++-+-+----+++--+-+-+++---++--+++---+-+-+-+--+-+-+---+++-+---++-+----++-++-++---+++-++-++---+++--+-++++--+----+--+--+----+++++++++-++-++--++-++-++++++--+--+-+++++++-+-++++---++-+-+---+++--++---+++-+-+-+-++-+-+-+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-+++++++---------+--+--++--+--+------++-++-+------+-+-++++---++-+-+---+++--++---+++-+-+-+-++-+-+-+++---+-+-+--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-++-++++---------+--+--++--+--+------++-++-+-----+-+-+----+++--+-+-+++---++--+++---+-+-+-+--+-+-+---+++-+---++-+----++-++-++---+++-++-++---+++--+-++++--+----+--+-------+++++++++-++-++--++-++-++++++--+--+-+++++++-+-++++---++-+-+---+++--++---+++-+-+-+--+-+-+-+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-+++++++---------+--+--++--+--+------++-++-+-------+-+----+++--+-+-+++---++--+++---+-+-+-+--+-+-+---+++-+---++-+----++-++-++---+++-++-++---+++--+-++++--+----+--+-------+++++++++-++-++--++-++-++++++--+--+-+++++++-+-++++---++-+-+---+++--++---+++-+-+-+-++-+-+-+++---+-+++--+-++++--+--+--+++---+--+--+++---++-+----++-++++-++-+++++++---------+--+--++--+--+------++-++-+------