def __init__(self):
    self._last_value = None
    self._last_value_time = 0
    self._key = cls.key.lower()
    self._max_age = cls.max_age
    if hasattr(cls, 'get_url'):
        self._get_url = cls.get_url.format(self.key)
        self.can_get = True
    else:
        self.can_get = False
        self.get = self.no_get
    if hasattr(cls, 'set_url'):
        self._set_url = cls.set_url.format(self.key)
        self.can_set = True
    else:
        self.can_set = False
        self.set = self.no_set
    if hasattr(cls, 'del_url'):
        self._del_url = cls.del_url.format(self.key)
    else:
        self.dele = self.no_dele
    if (self.fsapi_type == 'u8'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'void1'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._convert_to = (lambda v: 1)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 's8'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'u32'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'bool'):
        self._parse_value = self._get_fsapi_value_int
        self._convert_from = (lambda v: bool(v))
        self._convert_to = (lambda v: int(v))
        self._validate = self._validate_boolean
        self._get_core = (lambda : self._call(self._get_url))
        self.fsapi_type = 'u8'
    elif (self.fsapi_type == 'list'):
        self._parse_value = self._get_fsapi_value_list
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url, extra=dict(maxItems=40)))
    elif (self.fsapi_type == 'str'):
        self._parse_value = self._get_fsapi_value_str
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'raw'):
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    else:
        pass
    if (not hasattr(self, '_convert_from')):
        self._convert_from = self._default_convert
    if (not hasattr(self, '_convert_to')):
        self._convert_to = self._default_convert
    if (not hasattr(self, '_call')):
        self._call = self._default_call
def __init__(self):
    self._last_value = None
    self._last_value_time = 0
    self._key = cls.key.lower()
    self._max_age = cls.max_age
    if hasattr(cls, 'get_url'):
        self._get_url = cls.get_url.format(self.key)
        self.can_get = True
    else:
        self.can_get = False
        self.get = self.no_get
    if hasattr(cls, 'set_url'):
        self._set_url = cls.set_url.format(self.key)
        self.can_set = True
    else:
        self.can_set = False
        self.set = self.no_set
    if hasattr(cls, 'del_url'):
        self._del_url = cls.del_url.format(self.key)
    else:
        self.dele = self.no_dele
    if (self.fsapi_type == 'u8'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'void1'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._convert_to = (lambda v: 1)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 's8'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'u32'):
        self._parse_value = self._get_fsapi_value_int
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'bool'):
        self._parse_value = self._get_fsapi_value_int
        self._convert_from = (lambda v: bool(v))
        self._convert_to = (lambda v: int(v))
        self._validate = self._validate_boolean
        self._get_core = (lambda : self._call(self._get_url))
        self.fsapi_type = 'u8'
    elif (self.fsapi_type == 'list'):
        self._parse_value = self._get_fsapi_value_list
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url, extra=dict(maxItems=40)))
    elif (self.fsapi_type == 'str'):
        self._parse_value = self._get_fsapi_value_str
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    elif (self.fsapi_type == 'raw'):
        self._validate = (lambda v: None)
        self._get_core = (lambda : self._call(self._get_url))
    else:
        pass
    if (not hasattr(self, '_convert_from')):
        self._convert_from = self._default_convert
    if (not hasattr(self, '_convert_to')):
        self._convert_to = self._default_convert
    if (not hasattr(self, '_call')):
        self._call = self._default_call