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