class_docstr: Parameters
  ----------
  seasonality : int
      Length of seasonality
  seasonality_sm_input : float
      float value between [0, 1], applicable only if `seasonality` > 1. A larger value puts
      more weight on the current seasonality.
      If None, the model will estimate this value.
  level_sm_input : float
      float value between [0.0001, 1]. A larger value puts more weight on the current level.
      If None, the model will estimate this value.
class_docstr_tok: ["Parameters","--","--","--","--","--","seasonality",":","int","Length","of","seasonality","seasonality_sm_input",":","float","float","value","between","[","0",",","1","]",",","applicable","only","if","`","seasonality","`",">","1",".","A","larger","value","puts","more","weight","on","the","current","seasonality",".","If","None",",","the","model","will","estimate","this","value",".","level_sm_input",":","float","float","value","between","[","0.0001",",","1","]",".","A","larger","value","puts","more","weight","on","the","current","level",".","If","None",",","the","model","will","estimate","this","value","."]
docstr: Set attributes which are independent from data
docstr_tok: ["Set","attributes","which","are","independent","from","data"]
code: def _set_static_attributes(self):
      """Set attributes which are independent from data"""
      # setting defaults and proper data type
      if self.seasonality_sm_input is None:
          self._seasonality_sm_input = -1
      if self.level_sm_input is None:
          self._level_sm_input = -1
      elif self.level_sm_input < 0 or self.level_sm_input > 1:
          raise IllegalArgument(
              "only values between [0, 1] are supported for level_sm_input "
              "to build a model with meaningful trend."
          )
      if self.seasonality is None:
          self._seasonality = -1
  
imports: import numpy
  from copy import deepcopy
  import torch
  from enum import Enum
  from ..constants.constants import PredictionKeys, TrainingMetaKeys, PredictionMetaKeys
  from ..exceptions import IllegalArgument, DataInputException
  from .model_template import ModelTemplate
  from ..estimators.stan_estimator import StanEstimatorMCMC, StanEstimatorMAP
  from ..utils.features import moving_average
label_desc: Use image node_id 2 for calling the ETSModel obj's underlying member method code with example usage: obj._set_static_attributes() without return types