longest read ever but worth it, reps!