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