support for separate train and test sets