slimmer functions with info collection as its own function