code: def decode_filesystem_name(filename):
      
      result = []
      remain = filename
      i = 0
      while remain:
          # use match, to ensure it matches from the start of the string...
          match = _FILESYSTEM_TOKEN_RE.match(remain)
          if not match:
              raise ValueError("incorrectly encoded filesystem name %r"
                               " (bad index: %d - %r)" % (filename, i,
                                                          remain[:2]))
          match_str = match.group(0)
          match_len = len(match_str)
          i += match_len
          remain = remain[match_len:]
          match_dict = match.groupdict()
          if match_dict['as_is']:
              result.append(unicode(match_str))
          elif match_dict['underscore']:
              result.append(u'_')
          elif match_dict['uppercase']:
              result.append(unicode(match_dict['uppercase'].upper()))
          elif match_dict['N']:
              N = int(match_dict['N'])
              if N == 0:
                  N = 1
              # hex-encoded, so need to grab 2*N chars
              bytes_len = 2 * N
              i += bytes_len
              bytes = remain[:bytes_len]
              remain = remain[bytes_len:]
  
              # need this check to ensure that we don't end up eval'ing
              # something nasty...
              if not _HEX_RE.match(bytes):
                  raise ValueError("Bad utf8 encoding in name %r"
                                   " (bad index: %d - %r)" % (filename, i, bytes))
  
              bytes_repr = ''.join('\\x%s' % bytes[i:i + 2]
                                   for i in xrange(0, bytes_len, 2))
              bytes_repr = "'%s'" % bytes_repr
              result.append(eval(bytes_repr).decode('utf8'))
          else:
              raise ValueError("Unrecognized match type in filesystem name %r"
                               " (bad index: %d - %r)" % (filename, i, remain[:2]))
  
      return u''.join(result)
docs: Decodes a filename encoded using the rules given in encode_filesystem_name
      to a unicode string.