docs: def _safe_copy(dat):
      ''' mongodb doesn't allow '.' in keys, but does allow unicode equivs.
          Apparently the docs suggest using escaped unicode full-width
          encodings.  *sigh*
  
              \\  -->  \\\\
              $  -->  \\\\u0024
              .  -->  \\\\u002e
  
          Personally, I prefer URL encodings,
  
          \\  -->  %5c
          $  -->  %24
          .  -->  %2e
  
  
          Which means also escaping '%':
  
          % -> %25
      '''
  
      if isinstance(dat, dict):
          ret = {}
          for k in dat:
              r = k.replace('%', '%25').replace('\\', '%5c').replace('$', '%24').replace('.', '%2e')
              if r != k:
                  log.debug('converting dict key from %s to %s for mongodb', k, r)
              ret[r] = _safe_copy(dat[k])
          return ret
  
      if isinstance(dat, (list, tuple)):
          return [_safe_copy(i) for i in dat]
  
      return dat