pre-processing functions with multiple args