added the two modes