More responsive and kindof DRY fun