code: def date_censor(df, date_columns, date):
      
      for date_column, censor_columns in date_columns.items():
          for censor_column in censor_columns:
              df[censor_column] = df[censor_column].where(df[date_column] < date)
  
          df[date_column] = df[date_column].where(df[date_column] < date)
  
      return df
docs: a dictionary of date_column: [dependent_column1, ...] pairs
      censor the dependent columns when the date column is before the given end_date
      then censor the date column itself