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