| n | class Dsc: | n | class SizerClass: | 
             |  |  |  | 
             |     def __init__(self): |  |     def __init__(self): | 
            | n |         self.size = None | n |         self._value = 0 | 
             |  |  |  | 
             |     def __get__(self, obj, cls): |  |     def __get__(self, obj, cls): | 
            | n |         if self.size: | n |         if self._value: | 
             |             return self.size |  |             return self._value | 
             |         try: |  |         try: | 
             |             return len(obj) |  |             return len(obj) | 
             |         except: |  |         except: | 
             |             try: |  |             try: | 
             |                 return abs(obj) |  |                 return abs(obj) | 
             |             except: |  |             except: | 
             |                 return 0 |  |                 return 0 | 
             |  |  |  | 
             |     def __set__(self, obj, val): |  |     def __set__(self, obj, val): | 
            | n |         self.size = val | n |         self._value = val | 
             |  |  |  | 
             |     def __delete__(self, obj): |  |     def __delete__(self, obj): | 
            | n |         self.size = None | n |         self._value = None | 
             |  |  |  | 
             | def sizer(cls): |  | def sizer(cls): | 
            | t |     cls.size = Dsc() | t |     cls.size = SizerClass() | 
             |     return cls |  |     return cls |