def refresh(train, test, real_test=None):
    """
    Returns deep copies of all of the provided DataFrames for easily refreshing or undoing feature engineering
    """
    if real_test is not None:
        return train.copy(deep = True), test.copy(deep = True), real_test.copy(deep = True)
    else:
        return train.copy(deep = True), test.copy(deep = True)