added different startup modes