fixing up optional stuff