code: def cyclic_dt_feat_names(time:bool=True, add_linear:bool=False)->List[str]:
      "Return feature names of date/time cycles as produced by `cyclic_dt_features`."
      fs = ['cos','sin']
      attr = [f'{r}_{f}' for r in 'weekday day_month month_year day_year'.split() for f in fs]
      if time: attr += [f'{r}_{f}' for r in 'hour clock min sec'.split() for f in fs]
      if add_linear: attr.append('year_lin')
      return attf cyclic_dt_feat_names(time:bool=True, add_linear:bool=False)->List[str]:
      "Return feature names of date/time cycles as produced by `cyclic_dt_features`."
      fs = ['cos','sin']
      attr = [f'{r}_{f}' for r in 'weekday day_month month_year day_year'.split() for f in fs]
      if time: attr += [f'{r}_{f}' for r in 'hour clock min sec'.split() for f in fs]
      if add_linear: attr.append('year_lin')
      return attr
docs: Return feature names of date/time cycles as produced by `cyclic_dt_features`.