added BootNext and BootCurrent as well as a custom exception