reorder to be moar logical