all requirements done; on to optional stuff