We now handle multipart messages and now resolve the encodings for the payload also. Tested and it's working fine :) For the cases that are not working, chardet doesn't detect the encoding, neither does the builtin, so we just skip them (4 messages out of 20, 000).