def _get(self, key, source, none=None, empty=None):
     value = None
     keys = self.map(key)
     for key in keys:
         value = source.get(key)
         if value is not None:
             break
     if empty is not None and b9.empty(value):
         return empty
     elif none is not None and value is None:
         return none
     else:
         return value
 def empty(self, key):
     return b9.empty(self.get(key))